on 08-09-2014 11:31 AM
Hi!
I have the requirements to develop custom handler for Axis adapter of PI 7.11. I`ve kindly looked through the SAP Note 1039369 FAQ XI Axis Adapter, but can`t find what have to be name and structure of sda file to be deployed to AS Java.
From FAQ:
There are several places you can package your handlers. If your handlers do not require any references to any service or application components, they can be simply packaged in the standard 3rd party library SDA aii_af_jmsprovider.sda
or com.sap.adapter.lib.sda
depending on the adapter engine version (i.e., the former for the 640/700 engine and the latter for the 710 engine).
In blog http://scn.sap.com/people/alessandro.guarneri/blog/2011/01/10/soap-fault-in-sap-pi-hijack-it Alessandro advices just to put complied java class to aii_af_axisprovider.sda and deploy it. Refer to SAP Note 1028961 this package should be named as com.sap.aii.af.axisproviderlib.sda.
Is this a working approach? Does the sda have to include all required adapter jars or I can put just compiled handler class?
The other approach described in Axis FAQ is to use Axis SDK package:
If your handlers require some references to some service or application components, they must be packaged in a component that has references to these components and has its own start/stop life-cycle management. Your handlers should be registered to the Axis's class utility registry at the start up. In particular, if the adapter uses some handler classes that are not included in the standard library components of the Axis adapter, the class loaders of these classes must be registered in the org.apache.axis.utils.ClassUtils
registry.
...
This step can be automatically performed when you simply include your handler classes in the Axis sample adapter package and add these class names in its axis-application-classes.properties
file. In this case, the Axis sample adapter will automatically register these classes. Read What is the Axis sample adapter SDK? for more information.
...
The Axis sample adapter SDK for the 7.1x codelines is available as two deployable archives com.sap.aii.adapter.axis.sample.rar
and com.sap.aii.axis.sample.app.sda
.
Could anyone clarify what archive should I use to deploy handler? Both or just one?
I`ve found axis-application-classes.properties
in com.sap.aii.adapter.axis.sample.jar include with com.sap.aii.adapter.axis.sample.rar.
So do I need to put compiled handler class to com.sap.aii.adapter.axis.sample.jar, add it to sda and deploy?
Thanks for help in advance.
Best regards,
Sergey.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Sergey,
May I know how to deploy the custom Axis Handler? Do you mind provide mine me a step to step guide? I know how to deploy the provider libraries but don't know how to include my handler to it. my handler is an enhance HTTP sender that i would like to replace the original one.
I can share my codes with you.
Thanks!
Vincent
Hi Sergey,
Thanks for your quick reply. I tried to deploy the Sample handler in Note 1039369 as mentioned as Axis SDK to PO 7.31 SP11.
In the Axis SDK for 7.31, there are two files com.sap.aii.adapter.axis.sample.rar and com.sap.aii.axis.sample.app.sda. To deploy them and test the sample handler "SimpleAuthentication". Do I extract com.sap.aii.adapter.axis.sample.rar and include the com.sap.aii.adapter.axis.sample.jar to the Axis SDA Maker Tool?
I then deploy the result SDA to server but when I try to use it in the Adapter:
I am getting error "handler is not instaniated".
I really appreciate for your time and help, I tried to understand the steps to deploy custom handler to do some low level Soap communication customization.
Thanks!
Vincent
And here is the server/provider.xml
<?xml version="1.0"?>
<provider-descriptor>
<display-name>XPI Axis Provider Library</display-name>
<component-name>com.sap.aii.af.axisproviderlib</component-name>
<provider-name>sap.com</provider-name>
<references>
<reference type="library" strength="strong" provider-name="sap.com">com.sap.base.technology.facade</reference>
<reference type="library" strength="strong" provider-name="sap.com">engine.j2ee14.facade</reference>
</references>
<jars>
<jar-name>lib/addressing-1.0.jar</jar-name>
<jar-name>lib/axis.jar</jar-name>
<jar-name>lib/com.sap.aii.adapter.axis.sample.ejb.jar</jar-name>
<jar-name>lib/com.sap.aii.adapter.axis.sample.jar</jar-name>
<jar-name>lib/com.vces.axis.jar</jar-name>
<jar-name>lib/commons-codec-1.4.jar</jar-name>
<jar-name>lib/commons-discovery-0.2.jar</jar-name>
<jar-name>lib/commons-httpclient-3.0.jar</jar-name>
<jar-name>lib/commons-logging-1.0.4.jar</jar-name>
<jar-name>lib/commons-net-1.0.0-dev.jar</jar-name>
<jar-name>lib/opensaml-1.0.1.jar</jar-name>
<jar-name>lib/wsdl4j-1.5.1.jar</jar-name>
<jar-name>lib/wss4j-1.5.11.jar</jar-name>
<jar-name>lib/xalan-2.7.1.jar</jar-name>
<jar-name>lib/xercesImpl-2.9.1.jar</jar-name>
<jar-name>lib/xmlsec-1.4.4.jar</jar-name>
</jars>
</provider-descriptor>
User | Count |
---|---|
80 | |
9 | |
9 | |
7 | |
7 | |
6 | |
6 | |
6 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.