xsl-list
[Top] [All Lists]

RE: [xsl] File:New generates error

2009-03-16 12:08:32

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(_at_)saxonica(_dot_)com> wrote:

From: Michael Kay <mike(_at_)saxonica(_dot_)com>
Subject: RE: [xsl] File:New generates error
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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(_dot_)kumar(_at_)yahoo(_dot_)com]

Sent: 16 March 2009 12:18
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--






--~------------------------------------------------------------------
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>