2017-03-22 15 views
1

.jspファイルで、私はuserListとヘッダリストを繰り返します。タグのid属性は、リストに存在するデータのインスタンスを保持します。このIDは、Javaスクリプトレットでアプリケーションロジックを実装するために使用されます。Struts2 JSPをExcelにエクスポート

<logic:iterate id="a" name="ExcelForm" property="userList"> 
       <tr> 
       <logic:iterate id="b" name="ExcelForm" property="header"> 

        <td> 
         String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : ""); 

          .... 

%> 
        </td> 
       </tr> 
      </logic:iterate> 

はStruts2のにこれを変換する必要があるが、私はスクリプトレットでOGNL変数を使用する方法を知りません。

<s:iterator var="a" value="%{userList}"> 
       <tr> 
       <s:iterator var="b" value="%{header}"> 

        <td> 
         String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : ""); 

          .... 

%> 
        </td> 
         </s:iterator> 
       </tr> 
      </s:iterator> 

答えて

1

あなたが指定したスコープ内の変数(デフォルトではアクションのスコープ)を作成s:set tagを使用し、OGNL式の評価の結果として、これに値を割り当てることができます。

<s:set var="a" value='%{(data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "")}'/> 
関連する問題