So we've got ourselves a lovely vintage PHP WS we must integrate via JAX-RPC and this WS delivers some responses as follows:
 <return SOAP-ENC:arrayType="SOAP-ENC:Array[1]" xsi:type="SOAP-ENC:Array">
    <item SOAP-ENC:arrayType="xsd:ur-type[3]" xsi:type="SOAP-ENC:Array">
       <item xsi:type="xsd:string">...</item>
       <item xsi:type="xsd:float">...</item>
       <item xsi:type="xsd:int">...</item>
    </item>
 </return>
Now the problem is, JAX-RPC doesn't seem to know about ur-type
We thought about using a Handler for doing a search and replace on the the responses' XML or transforming it via XSLT so that ur-type => anyType but we can't seem to figure it out how to do it. Specifically what OutputStream / StreamResult could we use for the transformation?
Any other suggestion is more than welcomed :)
                        
So if the end we gave up with our idea of using a
XSLTor doing a search and replace on the rawXML.We're using
SOAPBodyto manipulate the responses'DOMand replaceur-typewithanyTypeand everything works out just fine. Nonetheless, if you have any better idea, please do post it.Edit: here's how we basically did it.
This goes in the class where you get the port, you need to register the handler where you do your search and replace:
And this is how the handler looks like: