4

仮定すると、次のようなコードのスニペットがあります。

 Map mappingId = new HashMap();
 mappingId.put("1", "1000");
 transformer.setParameter("mappingId", mappingId);

 transformer.transform(...);

これからキーを取得しようとする単純なXSLTがあります

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:map="xalan://java.util.Map"
extension-element-prefixes="map">

<xsl:param name="mappingId" />

<xsl:template match="/">
<xsl:variable name="id" select="map:get($mappingId, '1')" />
<MappedId><xsl:value-of select="id"/></MappedId>

</xsl:template>
</xsl:stylesheet>

次のエラーが発生します。

エラー:'メソッドjava.util.Map.get([ExpressionContext、] #STRING、#STRING)が見つかりませんでした致命的なエラー:'スタイルシートをコンパイルできませんでした'。

誰かがJavaマップにアクセスしてXSLにアクセスする方法を教えてもらえますか?

4

1 に答える 1