在服务器中部署时得到javax.xml.transform.TransformerConfigurationException

时间:2016-09-09 06:51:44

标签: java xml xslt xalan

我有RMI桌面应用程序。我用xsl模板生成报告的问题。这里我包含了XSL和java方法供您参考

在本地计算机上测试时工作正常,只有在我将其连接到服务器远程计算机时才会发生。

我尝试了已在此网站上发布的答案,但无法解决我的问题。

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xalan="http://xml.apache.org/xalan"  
    xmlns:nds="http://com.test"
    xmlns:dconv="xalan://com.test.server.BaseConverter"
    xmlns:java="http://xml.apache.org/xalan/java"
    xmlns:model="xalan://com.test.server.AbstractModel"
    extension-element-prefixes="dconv java model"
    exclude-result-prefixes="nds dconv java model" >

    <xsl:output method="html" indent="yes" encoding="UTF-8"/>
    <xsl:strip-space elements="*"/>
    <nds:Result     ResultDir="ModDir" ResultName="Report_Import"/>
    <nds:PreReq Name=".import0.xml"/>

    <xsl:param name="converter" select="'instanceof com.test.server.BaseConverter'"/>
    <xsl:param name="sourceModel" select="'instanceof com.test.server.AbstractModel'"/>               
    <xsl:param name="resultModel" select="'instanceof com.test.server.AbstractModel'"/>

    <xsl:variable name="title" select="'DMS-100 Data Import Report'" />
    <xsl:variable name="log" select="'.import0.xml'" />

    <xsl:template match="/OfficeData">
    <HTML>
        <xsl:call-template name="header">
            <xsl:with-param name="title" select="$title"/>
        </xsl:call-template>

    <BODY>
        <xsl:call-template name="office-meta">
            <xsl:with-param name="title" select="$title"/>
        </xsl:call-template>

        <xsl:apply-templates select="document(model:getURL($sourceModel, $log))"/>

    </BODY>
    </HTML>
    </xsl:template>

</xsl:stylesheet> 

我的java代码

AbstractModel.java

public String getURL(String filename) {
    // some code
    return urlstr;
}

异常

javax.xml.transform.TransformerConfigurationException: The first argument to the non-static Java function 'getURL' is not a valid object reference.
    at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:1017)
    at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:789)
    at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformerHandler(TransformerFactoryImpl.java:1093)

任何帮助将不胜感激。在此先感谢您,如果您需要任何信息,请告诉我。

0 个答案:

没有答案