Another attempt we made to get around it (since we were SURE it was cache
related) was to convert our object CFC to a java class.
So some background for those who might not have followed the old thread:
We have an "object" cfc. It is nothing but a few CFPROPERTY tags.
This would be an example of that entire CFC.
=================================
<cfcomponent output="false">
<cfproperty name="property1" type="string" />
<cfproperty name="property2" type="string" />
<cfproperty name="property3" type="string" />
<cfscript>
property1 = "";
property2 = "";
property3 = "";
</cfscript>
</cfcomponent>
=================================
Say it is called... properties.cfc
Then, in the webservice method, I made the returntype="properties" (in the
same directory)
At the end of the webservice, I did something like:
=================================
<cfscript>
local.properties = createObject( "component", "path.to.properties "
);
local.properties.property1 = somequery.value1;
local.properties.property2 = somequery.value2;
local.properties.property3 = somequery.value3;
</cfscript>
<cfreturn local.properties />
=================================
Occasionally, this will generate the following:
'coldfusion.xml.rpc.CFCInvocationException:
[java.lang.ClassNotFoundException :
path.to.properties][java.lang.LinkageError : loader (instance of
coldfusion/xml/rpc/SkeletonClassLoader): attempted duplicate class
definition for name: "path/to/properties"]'
Like I mentioned, we tried converting properties.cfc to a java class but I
could NOT get it to work in a webservice. It worked as a normal, local
component. The java class was very basic and is just the equivalent of the
properties.cfc above.
Example:
=================================
package com.prop.test;
public class properties {
public String property1 = "";
public String property2 = "";
public String property3 = "";
}
=================================
This is basically what I tried on the webservice side.
=================================
<cfcomponent output="false">
<cffunction access="remote" name="testMethod" returntype="any">
<cfset propObj = createObject("java", "com.prop.test.properties") />
<cfset propObj.property1 = 1 />
<cfset propObj.property2 = 2 />
<cfset propObj.property3 = 3 />
<cfreturn propObj />
</cffunction>
</cfcomponent>
=================================
Calling that like this works fine:
====================================
createOBject("component", "path.to.webservice").testMethod() />
=================================
Calling it like this generated a "Premature end of file" error (I can hit
the URL in a browser fine and see the WSDL)
====================================
createOBject("webservice",
"http://servername/path/to/webservice.cfc?wsdl").testMethod()
=================================
Cannot perform web service invocation testMethod.
The fault returned when invoking the web service operation is:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.xml.sax.SAXParseException: Premature end of file.
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXParseException:
Premature end of file.
at
org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown
Source)
at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown
Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown
Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown
Source)
at
org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(S... ''
I am just about out of ideas... and by "just about", I mean totally...
Any help or ideas on this would be GREATLY appreciated.
.:.:.:.:.:.:.:.:.:.:.:.:.:.
Bobby Hartsfield
http://acoderslife.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive:
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:341166
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm