1

私は疑問に思っていましたが、動的に値を静的パラメーターに設定することは可能ですか

<action name="TestApp_*" class="test.TestApp" method="{1}">
   <param name="app_Id">Dynamic value here</param>
   <result name="input">WEB-INF/jsp/test/testView.jsp</result>
</action>

私は試した

<action name="TestApp_*" class="test.TestApp" method="{1}">
   <param name="app_Id">${app_Id}</param>
   <result name="input">WEB-INF/jsp/test/testView.jsp</result>
</action>

動作していません。${app_Id}通常のテキストとして表示されます。

4

4 に答える 4

0

このようにしてみてください..

<result type="redirect">
    <param name="location">WEB-INF/jsp/test/testView.jsp</param>
    <param name="inputName">app_Id</param>
</result>

jspページでは、この値を次のように直接使用できます

<s:properties value="app_Id">

これを試して。

于 2013-09-11T09:50:01.613 に答える
-1

staticParamsインターセプターを見てください。

このインターセプターは、アクション構成で定義された静的パラメーターをアクションに取り込みます。アクションが を実装する場合Parameterizable、静的パラメーターのマップもアクションに直接渡されます。mergeが に設定されていない限り、静的パラメータはリクエスト パラメータ マップに追加されfalseます。

パラメータは通常、<param>内の要素で定義されますstruts.xml

このインターセプターをアクション構成に構成する方法を示します。

例えば:

<action name="someAction" class="com.examples.SomeAction">
    <interceptor-ref name="defaultStack">
         <param name="staticParams.parse">true</param>
         <param name="staticParams.overwrite">false</param>
    </interceptor-ref>
    <param name="num">${numValue}</param>
    <result name="success">good_result.ftl</result>
</action>

これにより、インターセプターはアクション構成から OGNL 式のパラメーター値を解析できます。

于 2013-09-10T08:47:55.027 に答える