Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用XSLT进行转换时,与拆分限制相关的警告指示了什么?_Java_Xslt_Xslt 1.0_Ibm Jvm - Fatal编程技术网

Java 使用XSLT进行转换时,与拆分限制相关的警告指示了什么?

Java 使用XSLT进行转换时,与拆分限制相关的警告指示了什么?,java,xslt,xslt-1.0,ibm-jvm,Java,Xslt,Xslt 1.0,Ibm Jvm,在使用XSLT进行转换时,我面临一个性能问题 转换提供的数据大约需要13到14秒 与此同时,我注意到控制台日志中有一条警告 [错误0635]一些 生成的函数超出了JVM方法大小限制,并被自动删除 分成更小的功能。您可以通过手动方式获得更好的性能 使用 “splitlimit”选项,或通过设置 变压器厂 属性 因此,看到这个错误,我甚至尝试按如下所示的方式设置属性 TransformerFactory tf = TransformerFactory.newInstance(); tf.setAtt

在使用XSLT进行转换时,我面临一个性能问题

转换提供的数据大约需要13到14秒

与此同时,我注意到控制台日志中有一条警告

[错误0635]一些 生成的函数超出了JVM方法大小限制,并被自动删除 分成更小的功能。您可以通过手动方式获得更好的性能 使用 “splitlimit”选项,或通过设置 变压器厂 属性

因此,看到这个错误,我甚至尝试按如下所示的方式设置属性

TransformerFactory tf = TransformerFactory.newInstance();
tf.setAttribute( "http://www.ibm.com/xmlns/prod/xltxe-j/split-limit", Integer.valueOf(1500));
我从中取的1500号

但我不确定在执行负载测试时这是否真的有帮助

有人能指导我如何在转型中实现绩效改进吗


JVM底层在Websphere App Server中。

您能否最小化样式表,使您只剩下麻烦、冗长的函数,并显示它们?也许我们可以调整它们,使它们运行得更优化。@Abel我有3000行XSL,实际上用于发出SOAP请求。我不确定我是否能将其最小化。嗯,出现的错误表明函数/模板很大。也许您可以找到这个函数,或者用较短的版本替换一些函数。如果看不到XSL中令人不安的部分,就很难给出建议。PS:我的意思不是要最小化3000行,这可能会让人望而生畏,而是要重新组织它,使函数的JVM版本不再超过这个限制。如果您有较大的命名模板,请尝试拆分它们—这应该很容易做到。也许可以通过中断和/或调查此错误的线程转储来找到导致此错误的实际函数的名称?