on 11-08-2005 7:56 AM
Hallo,
i have the problem, that the sent xml-message from SAP XI will not be processed from my tomcat-webserver. In SOAP-Monitor the Status stays "active", allthough the requestdata doesn´t seem to be dirty. When i try it with my Java-Client, i have no problems. SAP XI is sending data of type String[] and String[][].
I still tried out all kinds of webservice types(rpc,document,wrapped).
So, has anybody a hint?
Thanks!
Cien dobre Andrzej,
thank you for your answer. here is zhe way i did it:
1. Implement busines method foo(String a[],String b[][],String c[][])
2. generate wsdl with java2wsdl, several times with different styles
3. generate classes with wsdl2java
4. Deploy on tomcat
Then i sent the wsdl to our XI-Specialist and he did all the work on SAP-side.
When he send a request, i see the following on my SOAPMonitor:
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelop/'>
<SOAP:Header/>
<SOAP:Body>
<ns0:performSAPBestellanstossRequest xmlns:ns0='bestellanstoss'>
<kopfdaten>
<item>4500190535</item>
<item>0000554132</item>
<item>Wilhelm, Andreas</item>
<item>2216</item>
</kopfdaten>
<positionen>
<item>
<item>00010</item>
</item>
</positionen>
<stueckliste>
<item>
<item>00010</item>
</item>
</stueckliste>
</ns0:performSAPBestellanstossRequest>
</SOAP:Body>
</SOAP:Envelope>
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelop/'>
<SOAP:Header/>
<SOAP:Body>
<ns0:performSAPBestellanstossRequest xmlns:ns0='bestellanstoss'>
<a>
<item>4500190535</item>
<item>0000554132</item>
<item>Wilhelm, Andreas</item>
<item>2216</item>
</a>
<b>
<item>
<item>00010</item>
</item>
</b>
<c>
<item>
<item>00010</item>
</item>
</c>
</ns0:performSAPBestellanstossRequest>
</SOAP:Body>
</SOAP:Envelope>
This request will not be processed:
When i use my generated AXIS-Client i see the following request data, that will be processed:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelop/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<nsl:performSAPBestellanstoss soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:nsl="bestellanstoss">
<a xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[2]" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<item xsi:type="xsd:string">xxxxxx</item>
<item xsi:type="xsd:string">xxxxxx</item>
</a>
<b xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[][1]" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<item xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[][2]">
<item xsi:type="xsd:string">xxxxxx</item>
<item xsi:type="xsd:string">xxxxxx</item>
</item>
</b>
<c xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[][1]" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<item xsi:type="soapenc:Array" soapenc:arrayType="xsd:anyType[][2]">
<item xsi:type="xsd:string">xxxxxx</item>
<item xsi:type="xsd:string">xxxxxx</item>
</item>
</c>
</nsl:performSAPBestellanstoss>
</soapenv:Body>
</soapenv:Envelope>
So maybe you can give me more hints
Regards Ralf
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I'm not sure where is the problem: you have a different procedure
and in your case, you have more steps then me,
so there are more points where things could go wrong.
But is it a problem for you to go to your XI-Specialist
and ask him to generate WSDL (from Integration Directory) for you?
You could use it to generate Web Service code again.
I suppose this time you won't have any problems.
Andrzej
Hi!!!
I don't know if I can help you but I used SAP XI/SOAP adapter/Axis in different projects, so here are my hints (sorry if you find them a little infantile):
1. use Directory (Tools --> Define Web Service) to generate WSDL file
2. use WSDL2java tool from Axis to generate java code from your WSDL file
3. add your business logic to java code
4. compile all your code
5. deploy it
As I said I used this procedure many times and it always worked fine.
Sometimes I used TCPMonitor (between SOAP adapter and Axis) to see SOAP messages.
Did you create your Web Service in the same way?
Please give me more details.
Regards,
Andrzej
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.