cancel
Showing results for 
Search instead for 
Did you mean: 

AXIS Adapter - cannot initialize new channel with HTTPGetter

Former Member
0 Kudos

Hello,

I am trying to use the SOAP / Axis adapter for the first time in our development environment, following an example like from Michal's blog:

http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/01/05/michals-pi-tips-exchange-rates-fr...

Our Basis team has configured the Axis adapter according to the SAP notes 1039369 and 1028961.

Using the /XIAxisAdapter/MessageServlet utility to verify installation I see that Axis, Jakarta-Commons Discovery, Logging, Codec, Net, and HTTPClient are all installed OK.

However, when initializing the SOAP channel in RWB I get the failure:

failed to initialize: org.apache.axis.ConfigurationException: java.lang.ClassNotFoundException: com.sap.aii.adapter.axis.ra.transport.http.HTTPGetter

------------------------- Loader Info -------------------------

ClassLoader name: [library:com.sap.aii.af.axisproviderlib] Living status: alive Direct parent loaders:   [system:Frame]   [library:com.sap.base.technology.facade]   [library:engine.j2ee14.facade] Resources:   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/axis.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-discovery-0.2.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-logging-1.0.4.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-net-1.0.0-dev.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/wsdl4j-1.5.1.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-codec-1.2.jar   /usr/sap/XID/DVEBMGS00/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-httpclient-3.0-rc2.jar 

Does anyone have ideas on why the "com.sap.aii.adapter.axis.ra.transport.http.HTTPGetter" class cannot be found? This is what is typed into the SOAP adapter Connection Parameters - Task Class area.

How can I verify that this Task Class path is valid?


Accepted Solutions (1)

Accepted Solutions (1)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

This is the problem. You said basis installed axis based on the note 1039369. Go to the note and download the zip file faq_axis_adapter which contains axis framework classes. It does not show HTTPGetter class. So, that is the problem

Open the zip file and navigate to the directory structure as follows....

Go to res/axis 1.4-patch.zip.  Open this zip file and check the HTTPGetter class. I don't see this. so might have to upgrade latest axis jar for this.

Hope that helps.

Former Member
0 Kudos

Yes, now I see in that FAQ zip file for the patch 1.4 only the HTTPSender class is present, not the HTTPGetter under "faq_axis_adapter\res\axis-1.4-patch.zip\org\apache\axis\transport\http"

Do you know where to retrieve the full set of classes? I do not see this in any of the SAP Notes related to AXIS.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Please see SAP Note 1448849

Former Member
0 Kudos

Our Basis team has looked through the note and re-installed Axis. The verification page shows all components OK.

When searching through our Jar files, we see the Transport HTTPSender class, but no HTTPGetter class. Does anyone know where this class comes from?

baskar_gopalakrishnan2
Active Contributor
0 Kudos

I searched through findjar.com. No luck. Per SAP, we need to use axis jar version1.4 and needs to be compressed in the aii_af_axisprovider.sda. Your reply says that you follow the right one. I do see HTTPGetterCallBack  as below. This you might not need in this case

http://help.sap.com/javadocs/NW04S/SPS09/se/com/sap/engine/lib/security/http/HttpGetterCallback.html

This is an interesting problem. Michal's blog shows the package clearly and let us wait for his reply.

Former Member
0 Kudos

Ok, looking further into this we have found the HTTPGetter class only comes with Service Pack 6, and we are on PI 7.11 EHP1 Service Pack 3. Thanks for the help Baskar.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Since Michal's blog for the HTTP Get functionality using SOAP Axis adapter is referenced by many experts, I would recommend you to update the service pack details/issues as your comment on this blog.

Former Member
0 Kudos

Yes, I posted the point about minimum service pack level on his blog entry as a comment also.

Regards,

Aaron

Former Member
0 Kudos

Hi Aaron,

   I also have similar requirement and configured CC based on below Michals link

http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/01/05/michals-pi-tips-exchange-rates-fr...

I noticed channel is showing error "Channel has internal error". Can you please advise.

Thanks in advance

Former Member
0 Kudos

If the channel cannot initialize with that message it tells me all the installation requirements are not met. Maybe check the NWA log for more details. I didn't end up using this method because we couldn't upgrade our PI environment just for this one scenario.

Former Member
0 Kudos

HI Aaron,

sorry to bring this up again and I thought I would rather ask you directly than creating a new post as seldom people have used this design.

I am trying to poll a regular Soap based web service.

The sender system has configured a web service at their end for the SAP PI to consume and provided me with the URL. Basically this web service has a request message with some dummy fields and a response message with the details that is required to be posted in SAP.

I have configured a SOAP axis sender adapter with TASK active to do the polling of that URL using the HttpGetter class.

I have used the WSDL provided by the sender to create the response mapping to the BAPI in ECC.

I had initial issues connecting to the URL after sorting all that I am able to poll the URL successfully but I am not able to get the response message from that URL.

I have a feeling that the sender system should configure their web service so as to provide me the response without expecting any input in the request message as the getter class content is empty.

Can you please help me correct .

Thanks

Former Member
0 Kudos

Hi, did you verify the web service using a test tool like SoapUI or the WSNavigator? (RWB -> Services Registry -> Service Definition -> Endpoints -> Test -> set invocation parameters).

If you verify the webservice works with your parameters but still not getting expected results I think you can set a trace in NWA -> SOA Management -> Logs and Traces

former_member252347
Discoverer
0 Kudos

Did you get past the error for HTTPgetter class. From the above response, I understand why it comes up but any thoughts on how to fix it?

Answers (0)