Hi Rafe

There was a thread on this issue last year some time - you can see the
archives at:

http://www.pairlist.net/pipermail/cf-xml/Week-of-Mon-20011008/000145.html

To recap, you probably need to reinstall MSXML 3 in 'replace' mode.

I hope this helps - let us know if you're still having problems.

Tom

P.S. I've attached a simple tag for XSLT transformations without MSXML.
You'll need Xalan 1 or 2 (in compatibility mode) and the JRE installed on
your server. Xalan is the open source XSLT processor from Apache - you can
download it from http://xml.apache.org/.

-----------------+
tom dyson
t: +44 (0)1608 811870
m: +44 (0)7958 752657
http://torchbox.com

> Thanks Tom, that's what I've ended up using.
> I've been working locally on my machine getting stylesheets and xml
> documents working correctly together.
> However now it's time to get dynamic.
> Having installed CF XML Toolkit,
> I'm having problems with the <cfobject> tag - COM error 0x800401F3. Invalid
> class string , But I definately have the Microsoft
> XML parser installed on our server (3.0 rather than 4.0)
> Reading previous emails to this list it seems installing the latest one
> might sort things.
> Any Comments?
> 
> Thanks in advance
> 
> Rafe Fitzpatrick



<!--- 
  <CF_Xalan>
  Author: Tom Dyson, Torchbox.com, 03/03/02
  
  This tag performs an XSL transformation using Xalan 1 or 2 (in compatibility mode)
  
  Each parameter needs to be provided as a URI - e.g
  
  <cf_xalan 
                        xml = "http://torchbox.com/xml/test.xml";>
                        xsl = "http://torchbox.com/xml/test.xsl";
                        result = "c:\inetpub\wwwroot\xmltest\test.html">
--->

<!--- Check for attributes --->
<CFIF not IsDefined("Attributes.XML") or
  not IsDefined("Attributes.XSL") or 
  not IsDefined("Attributes.result")>
  <CFTHROW type="cf_xalan" MESSAGE="Attributes XML,  XSL and Result are required">
</CFIF>

<cftry>
<!--- Create the required Java classes --->

<CFOBJECT TYPE="JAVA" 
      ACTION="CREATE"
      CLASS="org.apache.xalan.xslt.XSLTProcessorFactory"
      NAME="xslProcessor">
      
<CFOBJECT TYPE="JAVA" 
      ACTION="CREATE"
      CLASS="org.apache.xalan.xslt.XSLTInputSource"
      NAME="xmlsource">
          
<CFOBJECT TYPE="JAVA" 
      ACTION="CREATE"
      CLASS="org.apache.xalan.xslt.XSLTInputSource"
      NAME="xslsource">
          
<CFOBJECT TYPE="JAVA" 
      ACTION="CREATE"
      CLASS="org.apache.xalan.xslt.XSLTResultTarget"
      NAME="output">
  
<CFCATCH>
  <B>There was an error creating instances of the required Java classes.<BR>
  if you have Xalan 2, check that you have also installed the Xalan 1 compatibility 
class.</B>
  <cfabort>
</CFCATCH>
</CFTRY>  

<cfscript>
        // initialise Xalan processor and the interfaces. 
        // note init() method is a convenience CF mechanism to alias class 
constructors
        myProcessor = xslProcessor.getProcessor();
        xmlsource.init('#attributes.XML#');
        xslsource.init('#attributes.XSL#');
        output.init('#attributes.result#');
        // run the transformation 
        myProcessor.process(xmlsource, xslsource, output);
        caller.successfile=attributes.result;
</cfscript>

Reply via email to