1

Struts 2 でパラメーターを渡す必要がありました。

<action name="Hfddisp1" class="model.HfddispAction" method="fetch_addesc">
   <result  >model.HfddispAction?ad_ref_no=${ad_ref_no}</result> 
</action>

私のjspは

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
   <head>
   </head>
<body>
   <h1> Iterator tag example 12</h1>
   <h3>Iterator with IteratorStatus 12</h3>
   <table>
      <tr class="even"> 
         <td><b>Ad_ref_no</b></td> 
         <td><b>Ad_title</b></td> 
      </tr> 
      <s:iterator value="hftbList" status="hftbListStatus">
      <tr>
  <s:if test="#hftbListStatus.even == true">
         <td style="background: #CCCCCC"><s:property value="ad_ref_no"  /> </td>
         <td style="background: #CCCCCC"><s:property value="ad_title" />  </td>
         <td  style="background: #CCCCCC">     
            <a href="<s:url action="Hfddisp1"/>">click here-1 </a>   
         </td>  
      </s:if>       
      <s:else>
         <td>
            <s:property value="ad_ref_no" />
         </td>
         <td>
            <s:property value="ad_title" />
         </td>
         <td >
            <a href="<s:url  action="Hfddisp2"/>
               <s:param name="ad_ref_no" value="%    {ad_ref_no}" />  ">
               click       here2
            </a>   
         </td>
      </s:else>
   </tr>
   </s:iterator>
   </table>

私が得ているエラーは次のとおりです。

メッセージ: アクション model.HfddispAction の結果が定義されておらず、大量のテストの結果がここに表示されます。

ファイル: file:/E:/Web_workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/Gshax/WEB-INF/classes/struts.xml

イテレータでデータを取得していますが、別のページに表示できません。

<--------qry is executed2hftb_add_master[ad_ref_no=huge volume of test goes here i can say what is it,email_address=null]
<--------qry is executed2huge volume of test goes here i can say what is it 
description successfully queried:1 huge volume of test goes here i can say what is it
Apr 26, 2012 12:07:04 PM org.apache.struts2.dispatcher.Dispatcher serviceAction
SEVERE: Could not find action or result

最初のページから、私が得る出力は

Ad_ref_no Ad_title 

12123120  i am the king but not sing  click here-1  
213421123  new test1  click here-2  
4150  Ad_title ........11:32:08  click here-1  
4152  Ad_title ........11:32:09  click here-2  
4153  Ad_title ........11:32:10  click here-1 

Click here -1 をクリックすると、上記のエラーが表示されます。AD REF NO 4150 をアクションに渡し、説明を別のページに表示するだけです。

4

1 に答える 1

0

Struts2 url および param タグを使用する...

現在、これがあります: <s:url action="Hfddisp2"/><s:param name="ad_ref_no" value="% {ad_ref_no}" />param タグが url タグ内にネストされていないことに注意してください。

あなたはこれを書くことができます:<s:url action="Hfddisp2"><s:param name="ad_ref_no"/></s:url>

上記では、指定された名前をデフォルトで解決するため、param タグの値属性が省略されていることに注意してください。

変数を使用していくつかの属性を使用すると、物事がより明確になります。

<s:url var="myurl" action="Hfddisp2">
   <s:param name="ad_ref_no"/>
</s:url>

その後、必要に応じて次のようにします。

<s:property value="#myurl"/>

また、次のように言って、現在の URL のすべてのパラメーターを新しい URL に含めることができるはずです。

<s:url action="Hfddisp2" includeParams="get"/> 

詳細については、常にタグ リファレンスhttp://struts.apache.org/2.3.1.2/docs/tag-reference.htmlを参照してください。

于 2012-04-30T15:17:54.123 に答える