Java Tomcat7和WebSphereV8.5使用哪些库来编译xslt?
在我们的web应用程序中,我们注意到Tomcat7和WebSphere6在性能上的显著差异。在这两个web容器中部署了相同的war文件。Websphere中的瓶颈是在编译样式表时(在日志中被视为“XL TXE-J编译样式表:jstl”)。在Websphere中大约需要2到3秒,在Tomcat中需要几毫秒。答案将帮助我们确定下一步修复缓慢的XML代码。提前谢谢 通过调用系统属性('xsl:vendor'),您可以找到正在使用的XSLT处理器。在任何复杂的环境中,最好采用这种标准做法,添加如下内容Java Tomcat7和WebSphereV8.5使用哪些库来编译xslt?,java,xslt,tomcat7,websphere-6.1,Java,Xslt,Tomcat7,Websphere 6.1,在我们的web应用程序中,我们注意到Tomcat7和WebSphere6在性能上的显著差异。在这两个web容器中部署了相同的war文件。Websphere中的瓶颈是在编译样式表时(在日志中被视为“XL TXE-J编译样式表:jstl”)。在Websphere中大约需要2到3秒,在Tomcat中需要几毫秒。答案将帮助我们确定下一步修复缓慢的XML代码。提前谢谢 通过调用系统属性('xsl:vendor'),您可以找到正在使用的XSLT处理器。在任何复杂的环境中,最好采用这种标准做法,添加如下内容
<xsl:comment>Transformed using <xsl:value-of
select="system-property('xsl:vendor')"/></xsl:comment>
使用
将信息输出到结果文档中
对于应用程序来说,对它使用的XSLT处理器有点挑剔也是一个好主意。不要只接受JAXP机制在类路径上发现的任何东西,加载一个XSLT处理器,您的应用程序实际上已经用它进行了测试
我怀疑您看到的性能差异不仅仅是由加载不同的XSLT引擎引起的,而是由一些其他因素引起的,例如样式表或其他资源的缓存。Thank you@michael kay。工作起来很有魅力!:)有趣的是,这两个环境是否使用不同的处理器?是的。在我的工作区中使用Tomcat作为开发测试环境。而Websphere部署在测试服务器上。由于许可证限制,无法在我的开发人员计算机上使用Websphere。他希望它们的行为方式相同,因为它们都应该遵守servlet规范,并且运行相同的JDK版本。事实证明,IBMJDK1.7和OracleJDK1.7的行为不同。顺便说一句,我刚刚发现我们已经在使用WebSphere8.5了。我为那些将要阅读这篇文章的人更新了这个问题。