RE: [xsl] File:New generates error

Subject: RE: [xsl] File:New generates error
From: Cool The Breezer <techcool.kumar@xxxxxxxxx>
Date: Mon, 16 Mar 2009 09:08:02 -0700 (PDT)
Thanks lot for pointing me in right direction. In the code base system
property for transformation factory is set to "null" that's why processor uses
sun's transformation packages(XSLTC) instead of saxon which gives error. I
realized that com.sun.org.apache.xalan.internal.xsltc.compiler.Variable
present in rt.jar which is part of JDK. This does not occur always, becos the
part of code setting system property for transformation factory to null is
executed in *Some* conditions.

-RB

--- On Mon, 3/16/09, Michael Kay
<mike@xxxxxxxxxxxx> wrote:

> From: Michael Kay <mike@xxxxxxxxxxxx>
> Subject:
RE: [xsl] File:New generates error
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>
Date: Monday, March 16, 2009, 8:52 AM
> 
> You're not using Saxon here, you're
using the XSLTC
> processor (part of the
> Xalan product). I suspect that's
related to the the
> problem, since calling
> conventions for extension
functions depend on the processor
> you are using.
> 
> Since file:exists in
Java returns a boolean, I would
> suggest taking out the
> " = 'true'" part of
the test, since comparing a boolean to
> a string is
> somewhat error-prone.
>
> Michael Kay
> http://www.saxonica.com/
> 
> > -----Original Message-----
> >
From: Cool The Breezer [mailto:techcool.kumar@xxxxxxxxx]
> 
> > Sent: 16 March
2009 12:18
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: [xsl] File:New
generates error
> > 
> > 
> > Hi,
> > We have strange error started coming
recently for
> using java 
> > A= PI to check file existence. Recently we
moved to
> saxon and 
> > earlier we were using Xalan but I dont think this
>
caused the 
> > error. We were using this code since years or so
> without any
> > problem and this error =A0comes randomly. I am not
> able to 
> >
replicate this in dev environment. I would appreciate
> your 
> > help on
finding root cause of this problem.
> > 
> > XSL Code:
> > 
> > <xsl:template
name="file-exists"
> xmlns:file="java.io.File">
> > 
> >         <xsl:param
>
name="filename"/>
> >        
> <xsl:choose>
> >        
>     <xsl:when 
> >
test="file:exists(file:new($filename)) =
> 'true'">true</xsl:when>
> >        
>    
> <xsl:otherwise>false</xsl:otherwise>
> >        
> </xsl:choose>
> >
    </xsl:template>
> > 
> > Error:
> > ERROR:  'Cannot convert
argument/return type in
> call to 
> > method 'java.io.File.new(reference)''
>
> 
> > FATAL ERROR:  'Could not compile stylesheet'
> > 
> >  
> > 
> >
java.lang.ClassCastException: 
> >
>
com.sun.org.apache.xalan.internal.xsltc.compiler.Variable 
> > cannot be cast
to 
> >
> com.sun.org.apache.xalan.internal.xsltc.compiler.Param
> > 
> >   
   at 
> >
> com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable.a
>
> ddParam(Unknown Source)
> > 
> > 
> > 
> > 
> > 
> >       
> > 
> >
>
--~------------------------------------------------------------------
> >
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> > To
unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
> > or e-mail:
<mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx>
> > --~--
> > 
> 
> 
>
--~------------------------------------------------------------------
>
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> To
unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
> or e-mail:
<mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx>
> --~--

Current Thread