|
Posted by TR on 07/07/06 17:22
All,
I have a project I am working on using JBossWS as the SOAP Server and
PHP's NuSoap library as the SOAP client. I have successfully been able
to transmit data between the two, but now I am stuck up on how String
Arrays ( String[] ) should be transfered from my PHP client to my Java
Server, it doesn't seem to be working properly, my Java SOAP server
produces an error. Coincidentally, I can send arrays of Strings from
my Java Server to my PHP Client and that works fine. I'm thinking it's
in the SOAP message request to the server that something is not
declared right, but I am not sure what piece, it all makes sense to me.
Has anyone ever run into this before, I'd appreciate any suggestions or
resources you could point me through to address the problem.
Here is the response from my Java SOAP Server:
javax.xml.rpc.JAXRPCException: org.jboss.ws.binding.BindingException:
javax.xml.bind.JAXBException: Failed to parse source: Failed to resolve
class name for access: com.grolier.search.webservices.endpoints.Array
Here is the SOAP Request that gets sent to my Java Server from my PHP
Client that is producing this error:
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns6571:search
xmlns:ns6571="http://org.jboss.ws/samples/rpcstyle/types">
<SearchRequests_1>
<authenticationResponse>
<isAuthenticated
xsi:type="xsd:boolean">1</isAuthenticated>
<token
xsi:type="xsd:string">blahblahblah</token>
<access
xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="xsd:string[3]">
<item
xsi:type="xsd:string">document</item>
<item
xsi:type="xsd:string">search</item>
<item
xsi:type="xsd:string">walktree</item></access>
</authenticationResponse>
<requests xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="object[1]">
<item>
<queryParser
xsi:type="xsd:string">Grolier_en</queryParser>
<query
xsi:type="xsd:string"><lang/es>estados</query>
<displayFields
xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="xsd:string[4]">
<item
xsi:type="xsd:string">assetid</item>
<item
xsi:type="xsd:string">type</item>
<item
xsi:type="xsd:string">title</item>
<item
xsi:type="xsd:string">first</item>
</displayFields>
<sortingOrder
xsi:type="xsd:string"></sortingOrder>
</item>
</requests>
</SearchRequests_1>
</ns6571:search>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Is there any reason anyone can think of why my array isn't properly
being handled on my Java SOAP Server?
Thanks,
TR.
[Back to original message]
|