Using CORBA Request-Level Interceptors
There are three administrative tasks associated with managing the registration of CORBA request-level interceptors:
This section explains these three tasks.
Note: The BEA Tuxedo CORBA Java client and BEA Tuxedo CORBA Java client ORB were deprecated in Tuxedo 8.1 and are no longer supported in Tuxedo 9.0.
All BEA Tuxedo CORBA Java client and BEA Tuxedo CORBA Java client ORB text references, associated code samples, etc. should only be used:
Technical support for third party CORBA Java ORBs should be provided by their respective vendors. BEA Tuxedo does not provide any technical support or documentation for third party CORBA Java ORBs.
You use the epifreg
command to register your interceptors with an ORB. When you register an interceptor, the interceptor is added to the end of the list of interceptors already registered with the ORB. This is important when you have multiple interceptors registered with an ORB.
The syntax of the epifreg
command for registering interceptors is the following:
epifreg -t bea/wle -i AppRequestInterceptor \
-p <InterceptorName> -f <FileName> -e <EntryPoint> \
-u "DisplayName=<Administrative Name>" -v 1.0
In the preceding command line:
InterceptorName
represents the name of the interceptor registered with the ORB, and the name you choose needs to be unique among those previously registered. You use this name for specifying the order of multiple interceptors and for unregistering an interceptor. The FileName
, EntryPoint
, and DisplayName
arguments that follow are associated with this name.FileName
represents the location of the file containing the implementation of the interceptor. This name is operating system and language dependent. This file is a sharable image file.EntryPoint
represents a string value that is the name of the entry point for the interceptor. This name is programming language specific. This value is the name of the initialization function in the shareable image that creates an instance of the interceptor.DisplayName
specifies a string value used for administrative functions and other reporting purposes. This name is strictly an administrative name.Note: When you register an interceptor on a machine on which BEA Tuxedo CORBA server processes are already running, those processes will not be subject to interception. Only those processes that are started after an interceptor is registered are subject to interception. If you want to make sure that all CORBA server processes are subject to interception, make sure that you register you interceptors before you boot any CORBA server processes.
Use the epifunreg
command to unregister an interceptor from an ORB. This command has the following syntax:
epifunreg -t bea/wle -p <InterceptorName>
The argument <InterceptorName>
is the same case-insensitive name specified in the epifreg
command. Unregistering an interceptor takes it out of the interceptor order.
You can see the order in which interceptors are registered, and thus called, by using the following command:
epifregedt -t bea/wle -g -k SYSTEM/interfaces/AppRequestInterceptor
The epifregedit
displays the order in which interceptors are executed when the ORB receives a request.
You can change the order in which the interceptors are executed using the following command:
epifregedt -t bea/wle -s -k SYSTEM/interfaces/AppRequestInterceptor \
-a Selector=Order -a Order=<InterceptorName1>,<InterceptorName2>,...
Each <InterceptorName>
is the case-insensitive name of the interceptor that must have been previously registered. This command replaces the order currently in the registry. The epifregedt
command must specify every interceptor that you want to have loaded and executed by the ORB. If an interceptor is still registered and if you do not specify its name using epifregedt
command, the interceptor is not loaded.