mercredi 21 mars 2018

How do I disable namespace aliasing in PHP soap client?

I have a problem with my PHP - Microsoft AX integration. I'm using SOAP/WSDL to integrate with the service, the problem I have is that I get this error after sending a request from PHP to WSDL

"Invalid instance type name 'ns3:AxdEntity_DirParty_DirOrganization"

Part of XML sent that causes this problem

<ns3:DirParty class="entity" xsi:type="ns3:AxdEntity_DirParty_DirOrganization"

and my soap env

SOAP-ENV:Envelope xmlns:SOAP-ENV="http://ift.tt/sVJIaE" xmlns:ns1="http://ift.tt/1FigGGr" xmlns:ns2="http://ift.tt/1FigIOC" xmlns:xsi="http://ift.tt/ra1lAU" xmlns:ns3="http://ift.tt/2psf1xt" xmlns:ns4="http://ift.tt/1veK8Zl" xmlns:ns5="http://ift.tt/1fUDLl3" xmlns:ns6="http://schemas.microsoft.com/dynamics/2010/01/datacontracts">

As you can see, PHP & it's soap client has aliased all of the namespaces, I need them inline, like this

<DirParty xsi:type="AxdEntity_DirParty_DirOrganization" class="entity" action="update" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

How do I disable namespace aliasing in PHP soap client?




Aucun commentaire:

Enregistrer un commentaire