cancel
Showing results for 
Search instead for 
Did you mean: 

Search for a SOAP messages with particular data.

Former Member
0 Kudos

Hello Experts!!

I have the following situation and I wonder if you could help me. Here it is:

I have a particular SOAP->XI Scenario where all of the SOAP requests used to be sent directly to the PI central instance host: http://<SAP PI Central instance virtual host>:50000/XISOAPAdapter/MessageServlet

Now, I've installed a SAP Web Dispatcher in top of this PI Server, and now all of the requests should be sent to the new SOAP URL: http://<SAP Web Dispatcher Virtual host>:8103/XISOAPAdapter/MessageServlet

(please note the change on the port)

So, the customer supposedly deploy this new URL to all of the POS across the country, but, we believe that maybe some POS are already using the old URL.

What I need to know is, if maybe is there a way to search for messages in the PI Tables that indicates that one or maybe more POS are still using the old URL. What we've found at the moment is that the XML message keeps the URL configuration under the "DynamicConfiguration" section:

But, I cannot figure out a way to do a search at the DB using this data. Another way will be searching in the messages one by one, but, we are talking about 2,500 messages. Maybe you'll know another approach of doing this particular search.

Thanks a lot for your valuable help.

saludos!

Carlos Ch.

Accepted Solutions (1)

Accepted Solutions (1)

engswee
Active Contributor
0 Kudos

Hi Carlos

Did you consider setting up a UDMS filter to extract the values from the Dynamic Configuration attribute?

Which version/SP of PI are you on? UDMS is available from some of the later SPs of 7.11 onwards (can't remember which SP, but I know SP11 onwards have it).

You can set up a filter for the particular interface and the set the extractor as shown below. If you want to extract already processed messages, check the "Extract with External Job" and then run program SXMS_EXTRACT_MESSAGES to rebuilt the index. More details in the above document.

Rgds

Eng Swee

manigram
Active Participant
0 Kudos

Hi ,

Simply way if it is in non production environment , stop the web dispatcher and tell them to send data from POS application. Who all are able to process sucessfull they are using the old URL --> meaning without webdispatcher.

Regards,

Manigandan

Former Member
0 Kudos

Astonishing answer @Eng Swee Yeoh !!!

Thanks a lot for your help!!!

engswee
Active Contributor
0 Kudos

Thanks for updating the thread. Pleased to know that the approach worked

Answers (2)

Answers (2)

iaki_vila
Active Contributor
0 Kudos

Hi Carlos,

You can talk with your basis team that the old direction will redirect to an error page.

I'm not sure but i think the payload or the messages are stored via RAW fields and you can't find any table with that field like DB field.

Regards.

Former Member
0 Kudos

Thanks a lot for your answers.

I'm the Basis Team (ups!), I think the best option will be to redirect the old web service URL to an error page. Do you know a way to achieve that??

regards!/saludos!

Carlos

former_member184720
Active Contributor
0 Kudos

I'm not sure in which DB tables those values would be stored.

However you can try below options and see if it helps.

-> During the receiver determination, try applying a filter on any of the available context objects. (Unfortunately, i don't see anything for SnderEndpointURL)

->If you don't any context objects then during the mapping, you should be able read the dynamic configuration values to validate the URL.

You can let the message fail if the message comes on the previous URL.

To read values in the mapping, just search SCN for Dynamic Configuration UDF.