cancel
Showing results for 
Search instead for 
Did you mean: 

PI Directory APIs

KeshavDesai
Explorer
0 Kudos

Hello folks

I am trying to update a communication channel using PI directory APIs. When i call the Change operation in CommunicationChannelIn service, I get a log saying the TransportProtocolVersion attribute is blank and must be provided. I retrieved the channel details using the Read operation of the same service, modified the adapter specific attributes (only the ones which i wanted to change) and then called the Change operation.

The channel in question is based on File adapter. I checked the adapter metadata in ESR and found that no TransportProtocolVersion is maintained for the file adpater. So, the Read operation returned blank value for this attribute.

Has anybody come across this issue? If the adapter metadata does not specify any transport protocol version, then shouldnt the validation checks in CommunicationChannelIn service provider proceed without errors on a blank value for this attribute?

Cheers

Keshav

Accepted Solutions (1)

Accepted Solutions (1)

0 Kudos

Hello!

Probably the XML sent from the ABAP proxy does not contain the XML element <rn3:TransportProtocolVersion />. Therefore the error occurs. The solution is that one uses extended XML handling in the call of the proxy. This does mean that a few statements must be added to the ABAP code where the proxy is called.

The extended XML handling is described

in http://help.sap.com/saphelp_nwpi711/helpdata/en/48/591b845e024bb9e10000000a42189b/frameset.htm

A example can also be found in the function module

SXIVERI_PRX_PROTO_PAYLOAD.

Best regards,

Franklin

KeshavDesai
Explorer
0 Kudos

Hello Franklin

Thanks a lot for the information on extended xml handling. I included the attribute in the prx ctrl tab for the line type and set it to all possible values (1,2,3) to see any changes. The default/nil/hide had no effect.

Unfortunately the issue persists.

Do you think it could be something on the provider side thats not been handled?

Regards

Keshav

KeshavDesai
Explorer
0 Kudos

Hi Prateek

Unfortunately setting the attribute to '' (my code is in abap), didnt help.

Shouldnt the extended xml handling option for 1 set the field to initial ('')?

Anyways, has anybody ever had a peek into these providers?

Cheers

Keshav

KeshavDesai
Explorer
0 Kudos

Hello Frank

My bad, the way I had set up extended xml handling on the client side was wrong. I went through the help docs and set it up correctly now. And voila! IT WORKS!

Thanks a ton.

Cheers

K

(although a bit concerned about the system performance after setting the extended xml handling)

Answers (1)

Answers (1)

prateek
Active Contributor
0 Kudos

In the code, are you passing any value to the field TransportProtocolVersion. Pass blank "" instead of not using the field and try again.

Regards,

Prateek