Я выполняю XSLT-преобразование из моего веб-приложения Java без проблем, как показано ниже:
Transformer transformer = TransformerFactory.newInstance().newTransformer(xslSource);
transformer.transform(xmlInput, xmlOutput);
В моем XSLT-преобразовании я добавляю вызов функции document()
для загрузки ответа от веб-службы RESTful:
<!-- do stuff -->
<xsl:variable name="url">
http://server/service?id=<xsl:value-of select="@id"/>
</xsl:variable>
<xsl:call-template name="doMoreStuff">
<xsl:with-param name="param1" select="document($url)/foo"/>
</xsl:call-template>
Хорошо, круто, нет проблем. Но теперь я хочу прочитать базовый URL из класса utils в java и передать его в таблицу стилей.
//java
String baseUrl = myUtils.getBaseUrl();
<!-- xslt -->
<xsl:variable name="url">
<xsl:value-of select="$baseUrl"/>
<xsl:text>/service?id=</xsl:text>
<xsl:value-of select="@id"/>
</xsl:variable>
Есть предложения о том, как это сделать? Мой класс Java Utils загружает значение из файла myApp.properties на пути к классам, но я не уверен, что смогу использовать это из XSLT ...