cancel
Showing results for 
Search instead for 
Did you mean: 

Consume PI web service from PHP

baskar_ramasamy
Participant
0 Kudos

Hi Experts,

We have a scenario like , Website(developed in PHP) need to post some data using PI webservice and PI should send data to ECC via proxy.

On consuming PI web service they are getting below error from their server.

SOAP-ERROR: Parsing WSDL: Unknown required WSDL extension 'http://schemas.xmlsoap.org/ws/2004/09/policy'

In the WSDL provided by PI , it has usingpolicy required=true , i searched in some forum and gave a solution to make the value as "false"

Editing the WSDL file is a standard SAP procedure ?

will this work if we change the value to "false"

<wsdl:documentation/>

<wsp:UsingPolicy wsdl:required="true"/>

<wsp:Policy wsu:Id="OP_SI_ContractPaymentSumamry_Req_out"/>

Thanks,

Baskar




Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Baskar,

There is nothing wrong with <wsp:UsingPolicy wsdl:required="true"/>.  

This is absloutly right here. Make sure you are following the right process to generate wsdl.

Regards,

Ashish

allamudi_loordh
Active Participant
0 Kudos

Hi Baskar,

The PI exposed wsdl formats soap binding document style.. and ask them to import .wsdl file..,use PI credentials to call PI end url.

Regards,

Loordh.

Former Member
0 Kudos

Hello Baskar R.

I would suggest to load WSDL file from the PI adress, ask PI guy to tell you the adress from the sender agreement, try downloading wsdl file that way by yourself...

Another common issue  that I know is that endpoint sometimes has "escape characters" when using names with special characters like ' ñ '.... try looking at the endpoint for %20c and correct them..

Hope this helps.

nabendu_sen
Active Contributor
0 Kudos

Hi Baskar,

You can achieve this from PI SOA Manager. Either you can make this "false" by editing manually or better if you change like below.

Check this:

http://scn.sap.com/community/pi-and-soa-middleware/blog/2010/03/19/wsdl-wspolicy--what-is-it-und-how...

baskar_ramasamy
Participant
0 Kudos

Hi Nabendu,

Thank you for information,

I tried the link provided by you, it works only for wsdl generated by ECC , Not for wsdl generated by PI.

That too wsdl displayed in ECC only if proxy generated for that interface.

If we don't have other option, i would go by Manually editing the wsdl and setting "false".

Thanks,

Baskar