Skip to Content
avatar image
Former Member

Asyc SOAP to PROXY Scenario: only the second message not reaching PI but the rest all are

All,

I am facing a kind of weird issue.

Scenario: Asyc SOAP to PROXY

Source: .Net application.

.net application pulls 5285 records and sends it in batches of 500 and hence 11 messages are created. However PI receives only 10 messages. Upon closer look we found that the second message fails in .net application and continues sending the 3rd 4th and so on.

We tried the same with decreasing the record count to eliminate the data issue and tried it with a set of 1 record per message and than with a set of 10 records per message and in each and every case the second message is not sent from .Net application to PI. 2nd message is not recorded in SOAP sender channel logs in RWB either.

SAP PI does send HTTP 200 return code after the first call.

Weird huhh..

Let me know if you have any suggestions.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • May 08, 2013 at 10:29 PM

    >and in each and every case the second message is not sent from .Net application to PI.

    With your various record size per message experiment(500,1,10) proves that data is not an issue.  But since you see no logging on the sender channel, I would recommend you to check the server log to find  any unknown errors/exceptions. Take help from Basis. If you don't find any errors at the server log level that means the message is not even coming to PI, so the problem is only at the sender system.

    Add comment
    10|10000 characters needed characters exceeded

  • May 09, 2013 at 12:00 AM

    Hi Vicky,

    This is really weird. But I am on the same side with Baskar. This should not be the issue PI Sender SOAP Adapter. But not sure if the message is not received by PI, then how .NET application is getting back HTTP 200.

    Can you try with normal HTTP call from .NET application and check. I know it will fail within PI because it will have SOAP Header and Envelop. but just need to check whether results would be same or different.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Thanks.

      The .Net application code has a loop. When we run the program in debug mode and as the program runs in loop to pick N number of records in each message and go on till all 5285 records are picked.

      So during first loop we see the meesage saying the "Webservice was successfully executed" and the first message is received in PI. Than in second loop we get the message "Cannot reach WebService" and the second message is not received in PI, the code than goes in next loop and the message is "Webservice was successfully executed" and the message is recived in PI and so forth for the rest of the messages.

      It's just that we are not receiving the 2nd message. We also executed the program in batch mode with delay of 1 min minute b/w each loop but still 2nd message is the problem.

      however when we ran the program manually in debug mode but delay of about 30 to 40 secs b/w the first and the second loop the second message was also received in PI. But when we started executing the next few messages quickly one after the another still in debug mode we again got the same issue.

      I am guessing it is something to do with resource availabilty on the source system....