簡體   English   中英

'java:class'是XSL名稱空間的標准用法嗎?

[英]Is 'java:class' a standard use of XSL namespaces?

我一直在嘗試國際化一些XSLT並讓它使用屬性文件。 我已經達到了這樣的程度,我認為我的代碼應該可以工作但是我收到的錯誤是我找到了原因: Java / XSLT:找不到匹配的1參數函數

正如它所說,我使用saxon(版本8)並且我正在嘗試確定是否使用這樣的代碼: xmlns:lcl="java:com.mycode.localisation.LocaleUtilities" xmlns:resource="java:java.util.ResourceBundle.getBundle('taskStrings', lcl:getCurrentLocale())"> ...

是“標准”XSL的一部分或僅由某些解析器支持的非官方/專有擴展。 我需要知道這一點,因為我需要在所使用的解析器中提供一定程度的靈活性,並且只有在不支持saxon的情況下才能證明它是不合理的,因為它不完全符合標准。

它導致的錯誤就是這樣

Cannot find a matching 1-argument function named
{java:java.util.ResourceBundle.getBundle('taskStrings', lcl:getCurrentLocale())}getString()

如果您正在嘗試國際化XSLT,可以使用key()函數和<xsl:key>元素。 您可能需要將屬性文件轉換為XML。

當然,如果您絕對需要保留屬性文件,可以使用saxon編寫自己的URIResolver ,它可以讀取屬性文件並將其以AS xml形式返回給XSL。

進一步的挖掘表明撒克遜人確實支持我想要的東西,並且問題是由使用實例方法引起的,這會導致並發症。 我現在只使用靜態方法調用重新完成所有事情,以保持簡單,一切正常

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM