0

Struts 1 から Struts 2 バージョンへの移行を含むプロジェクトに取り組んでいます。1つのjspで、イテレータを次のように持っています

<s:iterator var="each_part" value="#request.rule.parts" status="status">

ここで、「ルール」は配列リスト「パーツ」(POJO を含むリストでもある) を持つ POJO です。

イテレータ内に、.jsp を使用して含めていjsp:includeます。

<s:iterator var="each_part" value="#request.rule.parts" status="eachpart">
    <jsp:include page="/jsp/edit_rule_part.jsp">
        <jsp:param name="id" value="<%=id%>" /> 
    </jsp:include>

含まれている JSP、つまり edit_rule_part.jsp には、もう 1 つの反復子タグがあります。

<s:iterator var="cond" value="#request.rule.parts.conditions">

しかし、これはうまくいきません。私も使ってみました

<s:iterator var="cond" value="#each_part.conditions">

ここで、「each_part」はs:iterator親 jsp の親の ID ですが、機能しませんでした。

したがって、構造は次のようになります

JSP1
    -s:iterator (id = 'each_part')
    -jsp:include
    -JSP2
         -s:iterator (id = 'cond')

したがって、問題は、JSP2 の「cond」反復子が JSP1 の「each_part」反復子を参照したいということです。

別のjspファイルにある別のイテレータ変数のイテレータ型の変数「each_part」にアクセスするにはどうすればよいですか?

通常、value = #.list で子イテレーターの親イテレーターを参照しますが、この場合、両方のイテレーターが異なる jsps にあります。

以前の struts1 では、これはネストされたルート タグを使用して実現されていました。

4

0 に答える 0