org.thymeleaf.exceptions.TemplateProcessingException: в этом контексте допускаются только переменные выражения, возвращающие числа или логические значения

Это не саксонская, а фундаментальная часть того, как работают пространства имен. В ваших примерах 1 и 2 элемент RESPONSE не находится в пространстве имен, но в случае 3 он (и все его потомки) находятся в пространстве имен http://www.abc.com/. С API javax.xml.xpath вам нужно определить NamespaceContext, если вы хотите иметь возможность сопоставлять узлы в определенном пространстве имен, или, поскольку вы находитесь в XPath 2.0, вы можете использовать обозначение *:localName для соответствия всем узлам с помощью данное локальное имя, независимо от их пространства имен.

/*:RESPONSE/*:HEADER/*:HITS
0
задан want2learn 23 January 2019 в 18:24
поделиться

1 ответ

Первый будет работать так, как вы хотите - однако вы обойдете ограничение безопасности, и теперь ваши страницы уязвимы для внедрения JavaScript (что является первоначальной причиной, по которой это изменение было сделано).

Второй просто не работает. Она не расширяет переменную ${parameter1}, а просто кодирует ее как URL-адрес, например:

onclick="myFunction?$%7Bparameter1%7D"

Вы действительно должны делать это, как показано на странице.

th:data-parameter1="${parameter1}" onclick="myFunction(this.getAttribute('data-parameter1'));"
0
ответ дан Metroids 23 January 2019 в 18:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: