cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Receiver Adapter Error

Former Member
0 Kudos

Hi Team

I am doing a sceanrio, Proxy to Thirdparty. Sender is the proxy and SOAP is the receiver Adapter. The SRM ssytem is sending some 1000 PO's and out of that 995 0r 996 are getting executed succesfully and can see them in MONI. 4 or 5 messages are failing everytime and the error getting is "SOAP:call failed:java.lang.NULLPointerException". This is repeating everytime, when we send 1000 PO's, out of them 4 or 5 messages are failing always.

I am checking this in RWB-Audit Log

2)Also i am unable to see the failed message payload in RWB.

please help me in solving the issue.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

¤ in which MONI have you this error ? on SRM (if exist) or on PI ?

¤ Moreover, Have you check the occurence in your sender Data Type ? maybe you have a node level which is limited to 999 occurences. Or maybe, always in your source DT, you have a mandatory field (occurence 1.1) and one of your PO does not produce this info.

¤ Among the 1000 PO, have you check if there is an empty field or a field is missing, which could explain the Null Exception?

¤ Maybe it's not the "999 -> 1000" issue, but the data itself for a certain category of PO, and so something which is wrong in your mapping: Use "mapWithDefault" to create missing source fields, and avoid a Null Exception. Have you try to get the source XML (in MONI, or in RWB log or in CC log) and test it in your mapping?

Regards.

Mickael

Former Member
0 Kudos

Hi Mickael

thaanx a lot for your reply.

I am seeing the error in RWB of Pi, in Audit log.

i will check all the points and reply back.

tahnk you

Former Member
0 Kudos

Hi Mickael

I have checked the occurrence and its fine.

All the mandatory fileds are mapped correctly.

I have done mapping test with the failed message payload in IR, its shwoing sucess.

The messages are showing success in PI moni, but in RWB , Audit log we are getting the error as java.lang.Nullexception for 4 to 5 messages daily.

The webservice is restarting and trying to send the payload three times, but it is getting the same Nullexception error.

I am trying to send the Message from PI RWB, its throwing the error. If i run the same file from SRM, it showing success.

please help

Edited by: NABHINAV on Nov 11, 2011 12:55 PM

Ryan-Crosby
Active Contributor
0 Kudos

Hi,

Do you have anything more specific for your error other than the Null Pointer Exception? That could mean any number of things as it's about the most generic Java error you can have...

Regards,

Ryan Crosby

Former Member
0 Kudos

Hi,

Good news for your mapping !

So error is either in Adapter Engine (maybe a lack of java memory..but...), but I would think that the issue in on your Soap server (SRM) itself, and so returned to / catched by PI adapter.

Check with SRM team, these points:

- how many connexions (in parrallel) they can have for the same Web service with the same user ! (I think issue is here)

Note: you said you send 1000 PO: is it one by one? if yes, you have 1000 calls of web service...

- how many connexions (in parrallel) they can have with the same user ! (you probably use the same user to call different web services)

- a lack of memory in

- on issue on the web service itself as it's program...

of course, if you have more details than "Null.EXception" like a complete sentence, and when it appears in your AuditLog. Before the call, after the call, etc... Maybe that help us more... maybe.

regards

mickael

Former Member
0 Kudos

Hi Mickael and Ryan

Greetings for the day.

i am getting the following message in the Audit Log.

Audit Log for Message: 4eb9a213-b6f3-09d7-e100-8002ac130c38

Time Stamp Status Description

09.11.2011 Message successfully received by messaging system. Profile: XI URL: http:/fac4sap01:573001MessagingSystemfreceive/AFW/X1

01:32:10.393 Success Credential (User): PlISUSER

09.11.2011

01:32:10.403 Success Using connection SOAP_http://sap.coinki/X1System. Trying to put the message into the receive queue.

09.11.2011

Success Message successfully put into the queue.

01:32:10434

09.11.2011

Success The message was successfully retrieved from the receive queue.

01:32:25024

0911.2011 'Display Nessaqe Details I

The message status set to DLNG.

Success

01:32:25.026

09.11.2011

01:32:25.028 Success Delivering to channel: CC_3PL_TNT_SND

0911.2011

Success MP: Entering module processor

01:32:25.028

09.11.2011

Success MP: Processing local module localejbsisap.comicom.sap.aii.af.soapadapterMISOAPAdapterBean

01:32:25.028

09.11.2011

Success SOAP: request message entering the adapter with user J2EE_GUEST

01:32:25.028

09.11.2011 SOAP: Target uri:

Success

01:32:25.029 http:/Nvebservices.cevalogistics.comadernaMiebServices/Ordertvlanagement/OrdermanagementWebService.asinx

09.11.2011 Error SOAP: call failed: javalang.NullPointerException

01:32:25.086

09.11.2011

Success SOAP: sending a delivery error ack

01:32:25.096

09.11.2011

01:32:25.096 Success SOAP: sent a delivery error ack

09.11.2011 Error MP: Exception caught with cause com.sap.aii.afra.ms.api.RecoverableException: java.lang.NullPointerException

01:32:25.097

09.11.2011 Error Exception caught by adapter framework: null

01:32:25.097

09.11.2011 Error SOAP: error occured: com.sap.aii.aftains.api.RecoverableException: javalang.NullPointerException

01:32:25.097

09.11.2011 Delivery of the message to the application using connection SOAP_http://sap.cointaXISystem failed, due to:

01:32:25.108 Error com.sap.aii.atrains.api.RecoverableException: javalang.NullPointerException.

09.11.2011

Success The message status set to WAIT.

In message display tool , i am getting the following message.

Message Display Tool (Detail Display)

Message Data Message Content Aucirt Log

Message Part: ISOAP Document u2022 u20221

SOAP Document

content-length: 16380 accept-encoding:gzip sap-xi-messageid:4E89A2F386F309D7E1008002AC130C38 http:POST host:ac4sap01:57300 user-agent:SAP Web Application Server (1.0;700) content-type:multipart/related;boundary=SAP_4E867782D3530320E1008000AC130C38_END:type="text/xmln;stE soapaction:nhttp://sap.com/xi/XI/Nessage/30"

<SOAP:Envelope xmlns:SOAP=1http://schemas.xmlsoap.org/soap/envelope/1><SOAP:Header><sap:Main xmlns:z

Please hel me in solving the issue.

thanx in advance.

Former Member
0 Kudos

Hi,

to check the folllowing reasons,

1. URL is incorrect.

2. URL is perfect but target server is down or unavailable.

3. URL is correct, Server is up..but there is a firewall problem/a network problem.

reagrds,

ganesh.

Former Member
0 Kudos

Hi ganesh

I am facing the problem every time, out of 1000 PO's, 4 0r 5 PO's are failing regularly.

All the points which you mentoined are correct, if there are any problems, 995 or remaining PO's will not be succesfull isnt it?

Former Member
0 Kudos

Is a async scenario?

If yes, are you calling the webservice 1000x, or sending 1000x itens in one dispatch?

Att.

Former Member
0 Kudos

Hi

It is a async scenario.

The sender SRM System is sending all the PO's at once by a back ground job.

The PO's may wary on different days, on week days there may be around 300 to 400 PO's and on weekends there will be around 1000 PO's or so.

Even if there are less number of PO's, daily we are getting atleast 4 to 5 messages are failing.

The error message i have collected from the Audit Log.

please help in solving the issue.

Former Member
0 Kudos

Hi,

Take the xml of inbound message, and simule in rwb->integration engine->test message.

Remove some itens, and test it. 50 itens, 100 itens, etc...

I believe that the cause of the error is the excessive number of PO's passed to the webservice.

If the error is really this, will be necessary change the program that sends the PO's, with a while and select * from table up to 100 rows, to pick up pieces.

att.

Former Member
0 Kudos

From my experience, when you transfer SAP POs through PI to external webservice, there should be some validation happens at the webservice layer of the target system before the web service passes the original information to their application layer. The validation can be anything like checking the Vendor address, Checking the correctness of the order ...etc etc . So i would suggest to ask your external web service folks to check if they have any validation in place before they pass the data to their application layer.

As you said only some POs/XMLs are failing, i strongly feel that this could be the issue.

Please note if you receive response code other than 200 from webservice, SOAP adapter treats that as error and send the same message back to AE.

Normally webservices won't send 200 code for any validation error

PS: you can still try to use XMLSpy to post the failed message to the web service to know the exact cause.

Former Member
0 Kudos

Hi Nabhinav,

You can come to conclusion in two ways.

First resend the failed messages and check whether it has gone to webservice. If it has then the issue is not with the message but with the number of calls made with webservice.

Secondly, try sending the messages in parts like 4250 or 2500 messages and see how the webservice responds. If everything goes on successful, then you would need to reduce the number of messages or talk to webservice folks for any potential restrictions on connections.

Regards

Krish