0

我正在将旧 Web 应用程序从Tomcat 4.0迁移到WAS 6.1

我们使用了很多这样的xslt 转换(简化):

<xsl:stylesheet 
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      version="1.0"
      xmlns:java="com.map.agro.Util">

      <xsl:variable name="LAWEBAPP">
            <xsl:value-of select="java:getCtx('BACK')"/>
      </xsl:variable>


<xsl:template match="ROW">
<a><xsl:attribute name="href">/<xsl:value-of select="$LAWEBAPP"/>/search.jsp</a>
</xsl:template>

</xsl:stylesheet>

它适用于 Tomcat 4.0,但不适用于 WAS 6.1,它抱怨:

XSL-1000: (Fatal Error) Error while parsing XSL file (Extension function namespace should start with 'http://www.oracle.com/XSL/Transform/java/'.).

我尝试了在 Google 中找到的几种变体,但均未成功。

有人知道这里会发生什么以及如何解决吗?

(负责 xslt 转换的 .jar 库是什么?)

谢谢

4

1 回答 1

0

问题解决了,

在类路径中,有一个名为xmlparserv2.jar的库,带有一个“有问题的”xslt 处理器(在javax.xml.transform基础下)。

从项目中删除它,做这件事。

现在,其他库进行 xslt 转换(在org.apache.xalan.xslt基础下)。

这篇文章对我帮助很大: javax.xml.transform 使用的是什么处理器?

于 2013-07-16T14:05:26.607 回答