6

<x:transform>XSLT とタグを使用して JSP を生成したいと考えています。しかし、ファイル システムに XML ファイルがなく、次のようにインポートできません<c:import url="./xml/MyXml.xml" var="xmldoc"/>。Java コードで動的に生成され、リクエスト属性に String として設定されます。私はこのようにしてみます:

<div id="mydiv">
    <c:set var="xmldoc">
       <c:out value="${requestScope.someXmlString}"/>
    </c:set>
    <c:import url="./xsl/MyStylesheet.xsl" var="xsltdoc"/>
    <x:transform xml="${xmldoc}" xslt="${xsltdoc}"/>
</div>

また

<div id="mydiv">
    <c:set var="xmldoc" value="${requestScope.someXmlString}">           
    <c:import url="./xsl/MyStylesheet.xsl" var="xsltdoc"/>
    <x:transform xml="${xmldoc}" xslt="${xsltdoc}"/>
</div>

しかし、それは機能していません。<x:transform>xml-document (文字列ではなく) のみを想定しているようです。どうすればいいですか?または、これを行う別の方法はありますか?

4

1 に答える 1

0

タグでリクエスト値を直接参照できる値を試して設定する必要はありません<x:transform>

<x:transform xml="${requestScope.someXmlString}" xslt="${xsltdoc}"/>

デフォルトでは、jstl はリクエスト スコープを使用します。したがって、 request.setAttribute("someXmlString", xmlStr); のような値を設定すると、その後、直接呼び出すことができます

<x:transform xml="${someXmlString}" xslt="${xsltdoc}"/>

どちらも機能するはずです。

于 2014-05-27T13:56:26.820 に答える