This is a duplicate of the problem reported in bug 19038
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=19038). The problem is
that XSLTC does not know the type of the parameter at compile time,
therefore it cannot resolve the extension function call to a Java method.
Supporting this paramter passing scenario requires a runtime method
resolving feature in XSLTC. You can also see this note
(http://marc.theaimsgroup.com/?l=xalan-dev&m=106250879605900&w=2) for
information.
Regards,
Morris Kwan
XSLT Development
IBM Toronto Lab
Tel: (905)413-3729
Email: [EMAIL PROTECTED]
"Siljan Simpson"
<[EMAIL PROTECTED] To: [EMAIL PROTECTED]
> cc:
Subject: XSLTC Extensions
09/02/2003 02:27
PM
Hi all,
I am trying to ues java Extensions in XSLTC. I want to pass a hashtable as
the input parameter to the XSL and populate the element with the hashtable.
The XSL works fine when I run it in the interpretative mode. But it fails
to compile with the the error message "The first argument to the non-static
Java function 'get' is not a valid object reference."
Below is the XSL file :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns="
http://www.verizon.com/RetrievalService"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:java="http://xml.apache.org/xalan/java.util.Hashtable"
extension-element-prefixes="java">
<xsl:output method="xml" omit-xml-declaration="no" indent="yes"/>
<xsl:param name="HashTableInst"/><!-- this instance is set when I
create the transformer-->
<xsl:template match="SearchRecord">
<SearchResult>
<test><xsl:value-of select="java:get
($HashTableInst,'$ClientRequestId$')"/></test>
</SearchResult>
</xsl:template>
</xsl:stylesheet>
In my java code, I pass an instance of Hashtable with data.
Any pointers will be appreciated.
Thanks,
Siljan Simpson
--
__________________________________________________________
Sign-up for your own personalized E-mail at Mail.com
http://www.mail.com/?sr=signup
CareerBuilder.com has over 400,000 jobs. Be smarter about your job search
http://corp.mail.com/careers