Possible Values For InterceptorChain Interceptor Configuration Files (Doc ID 2238909.1)

Last updated on JULY 29, 2017

Applies to:

Oracle Service Registry - Version 11.1.1.2.0 and later
Information in this document applies to any platform.

Goal

What are the possible values for interceptorChain Interceptor configuration files?


The below document was followed to create the interceptor that logs requests:

----------------------------------------------------------------------------------------------------------------------------
  Oracle Fusion Middleware Service Registry Guide 11g (11.1.1.6.0)
  E13665-02
  November 2011
  http://www.oracle.com/technetwork/middleware/registry/osr111productdocumentation-159992.pdf
  Section 3.3.2. Logging Interceptor Sample
----------------------------------------------------------------------------------------------------------------------------

An interceptor class was developed and deployed on OSR 11.1.1.6 running on Weblogic 10.3.6. It has the interceptor config file. Their samples are as follow:

interceptor class

package interceptor;
import org.idoox.config.Configurable;
import org.idoox.wasp.WaspInternalException;
import org.idoox.wasp.interceptor.InterceptorChain;
import org.systinet.uddi.interceptor.ExceptionInterceptor;
import org.systinet.uddi.interceptor.RequestInterceptor;
import org.systinet.uddi.interceptor.ResponseInterceptor;
import org.systinet.uddi.interceptor.StopProcessingException;
import java.lang.reflect.Method;
public class LoggingInterceptor implements RequestInterceptor,
ResponseInterceptor, ExceptionInterceptor {
public void load(Configurable config)
throws WaspInternalException {
// no initialization required
}
public void destroy() {
// no destroy required
}
public void intercept(Method method,
Object[] args,
InterceptorChain chain,
int position)
throws StopProcessingException, Exception {
System.out.println("request: " + method.getName());
}
public Object intercept(Method method,
Object returnValue,
InterceptorChain chain,
int position)
throws Exception {
System.out.println("response: " + method.getName());
return returnValue;
}
public Exception intercept(Method method,
Exception e,
InterceptorChain chain,
int position) {
System.out.println("exception: " + method.getName());
return e;
}
}
 
interceptor config file

<?xml version="1.0" encoding="UTF-8"?>
<config name="MyInterceptorConfig">
<UDDIInterceptorInstance name="LoggingInterceptorInstance"
instancePerCall="false"
className="interceptor.LoggingInterceptor"/>
<UDDIInterceptor name="LoggingInterceptor"
instanceName="LoggingInterceptorInstance"
interceptorChain="inquiry_v3"
request="true"
response="true"
fault="true" />
</config>


The question is: what are the possible values for the interceptorChain property?
It was set to :

  inquiry_v3,
  publishing_v3 and
  security_v3

but the interceptor seems to receive only request from the operations defined in UDDI Inquiry_v3 Port from the OSR Web Service API.
In other words, it does not intercept operation save_business, but it does intercept find_business for instance.

 

Oracle Documentation states:

  "interceptorChain - UDDIInterceptorChains are defined for each API in their configuration files. This attribute contains a reference to the required API."

the WSDL http://<host>:7101/registry/uddi/inquiry/3.0/wsdl defines three Ports:

  UDDI_Inquiry_PortType (defines oepration find_business)
  UDDI_Publication_PortType (defines oepration save_business)
  UDDI_Security_PortType


Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms