Copy link to clipboard
Copied
Hi All,
I have a web services written in CF that has two input parameters. One parameter is an integer and the other parameter is an XML string. In the application that calls this web service, it is passing an wddx packet to this second parameter.
The trouble is, I keep on getting the following error message.
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>coldfusion.xml.rpc.CFCInvocationException: [coldfusion.wddx.WddxDeserializationException : WDDX packet parse error at line 1, column 1. Content is not allowed in prolog..]</faultstring>
I took a look at Ben Nadel's blog on this problem. I have tried trimming out the excessive spaces but it did not solve the problem. I had also looped through the XML string to see if the BOM is the problem; the BOM is not there. And yet, the above message keeps coming on. Can anyone point me to the right directions in solving this error?
Thanks advance,
Monte
Copy link to clipboard
Copied
Sorry, I copied the wrong error message.
The following error message is what I am getting.
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: coldfusion.xml.rpc.CFCInvocationException:
[coldfusion.wddx.WddxDeserializationException : WDDX packet parse error at line 1, column 1. Content is not allowed in prolog..]
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:coldfusion.xml.rpc.CFCInvocationException: [coldfusion.wddx.WddxDeserializationException : WDDX packet parse error at line 1, column 1. Content is not allowed in prolog..]
at coldfusion.xml.rpc.CFComponentSkeleton.__createCFCInvocationException(CFComponentSkeleton.java:723)
at coldfusion.xml.rpc.CFComponentSkeleton.__invoke(CFComponentSkeleton.java:670)
at aimsweb.ws.SIFDataEx.InsertSchools(C:\Inetpub\wwwroot\AIMSweb\ws\SIFDataEx.cfc)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Dele... ''
Copy link to clipboard
Copied
In case anyone wants to see the codes,
Here is what I have in the web service,
<cfcomponent>
<cffunction name="InsertStuff" access="remote" returntype="query" output="no">
<cfargument name="MyID" type="numeric" required="yes">
<cfargument name="MyData" type="xml" required="yes">
<cfset variables.my_returned_query = QueryNew("SomID, Some_Message")>
<!---
Some CF codes
--->
<cfreturn variables.my_returned_query>
</cffunction>
</cfcomponent>
In the page where I call my web service, the followings are what I have.
<cfset variables.temp_qry = QueryNew("Some_ID, Some_Stuff")>
<cfset variables.temp = QueryAddRow(variables.temp_qry)>
<cfset variables.temp = QuerySetCell(variables.temp_qry, "Some_ID", "1")>
<cfset variables.temp = QuerySetCell(variables.temp_qry, "Some_Stuff", "Stuff")>
<cfwddx action="cfml2wddx" input="#variables.temp_qry#" output="variables.temp_wddx">
<cfscript>
ws = CreateObject("webservice",
"http://localhost/mydir/ws/mywebservice.cfc?wsdl");
ws.InsertStuff(1, variables.temp_wddx);
resp = getSOAPResponse(ws);
</cfscript>
The line that is bombing out is ws.InsertStuff(1, variables.temp_wddx);
Please see my other post for the error message.