You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/11/14 20:30:21 UTC

DO NOT REPLY [Bug 14561] New: - XSLTC org.apache.xalan.xsltc.cmdline.Compile and Type check error

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14561>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14561

XSLTC org.apache.xalan.xsltc.cmdline.Compile and Type check error

           Summary: XSLTC org.apache.xalan.xsltc.cmdline.Compile and Type
                    check error
           Product: XalanJ2
           Version: 2.4
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: org.apache.xalan.xsltc
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: mariella@lanl.gov


Hello,

I am trying to compile an file1.xsl using 
org.apache.xalan.xsltc.cmdline.Compile -x file1.xsl

The stylesheet includes seom java extension functions used in file1.xsl

The file1.xsl looks like:

____________
<?xml version="1.0"?>
<xsl:stylesheet
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 
    xmlns:lxslt="http://xml.apache.org/xslt"
    xmlns:prevNext="vdkPrevNextUrls"
    xmlns:parseQuery="parseQuery"
 
    version="1.0">
 
<lxslt:component prefix="prevNext" elements="" functions="prevNextUrls">
  <lxslt:script lang="javaclass" src="pack.team.xsltfunctions.vdkPrevNextUrls"/>
</lxslt:component>
 
<lxslt:component prefix="parseQuery" elements="" functions="getVdkKey">
  <lxslt:script lang="javaclass" src="pack.team.xsltfunctions.parseQuery"/>
</lxslt:component>
 
<!-- call external functions -->
  <xsl:variable name="vdkKey" 
select="pack.team.xsltfunctions.parseQuery.getVdkKey"/>
  <xsl:variable name="tmpFileName" 
select="pack.team.xsltfunctions.parseQuery.getSessionId"/>
 
  <xsl:variable name="prevNextResponse">
        <xsl:if test="string-length($tmpFileName) &gt; 0">
           <xsl:value-of 
select="pack.team.xsltfunctions.vdkPrevNextUrls.prevNextUrls(string($vdkKey))"/>
        </xsl:if>
  </xsl:variable>

 
</xsl:stylesheet>

____________


The function java prevNextUrls takes a String as input parameter and returns
a String.

1)
When I try to compile the file I get the following error:

Compiler error(s): 
  Type check error in funcall
(pack.team.xsltfunctions.vdkPrevNextUrls.prevNextUrls, [funcall(string, 
[variable-ref(vdkKey/node-set)])]).

2) The two java functions 
getVdkKey and getSessionId do not take parameters but each returns a String.
If in the stylesheet If I call 
<xsl:variable name="vdkKey" 
select="pack.team.xsltfunctions.parseQuery.getVdkKey"/> I do not get any error.
If I specify the paretheses for the function 
<xsl:variable name="vdkKey" select="pack.team.xsltfunctions.parseQuery.getVdkKey
()"/>
  
I get the following error:

Compiler error(s): 
  Type check error in funcall(lanl.lww.xsltfunctions.parseQuery.getVdkKey, []).

Is that a bug ? 
Could you help please ?
Thanks,

Mariella