Есть ли предел диапазона для XSL: VARIABLE - PullRequest
0 голосов
/ 13 июля 2011
<xsl:for-each select="//detailoption | //systemnotes">
  <xsl:if test="normalize-space(@id)!=''">~</xsl:if>
</xsl:for-each>

Этот цикл выполняется для коротких итераций.Но когда итерация увеличивается, весь XSL не преобразуется и выдает ошибку.

SystemId Unknown;Строка № 0;Столбец № 0;java.lang.ArrayIndexOutOfBoundsException

Существуют ли ограничения диапазона для переменных данных в XSL?Есть ли решение для преодоления этой проблемы?

Ксалан 2.7.0.Есть ли способ найти более подробную информацию об этом.
Наша текущая кодировка:

TransformerFactory factory = TransformerFactory.newInstance();
factory.setURIResolver(createURIResolver()); 
Templates template = factory.newTemplates(xslIn); 
Transformer xformer = template.newTransformer(); 
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
OutputStream hndWrite = byteStream;
Result result = new javax.xml.transform.stream.StreamResult(hndWrite); 
xformer.transform(xmlIn, result)

1 Ответ

0 голосов
/ 13 июля 2011

Я предлагаю вам обновить свой Xalan до 2.7.1, а затем повторите попытку. Там было несколько улучшений производительности и исправлений. Смотрите примечания к выпуску JIRA здесь:

https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10584&version=10863

Смотрите также некоторые тесты, которые я недавно сделал. Средний тест был в 2 раза быстрее с Xalan 2.7.1, а не с 2.7.0:

Производительность Java XPath (реализация Apache JAXP)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...