2010-08-04 26 views
0

我已將Hahmap分配給下拉列表。每個下拉列表將被設置爲hashmap。當我嘗試獲取這些值時,我將值作爲字符串數組而不是一個對象。因此,如果驗證失敗,我無法重新填充值。下面是我使用的代碼來填充值的 。在struts2中返回字符串數組而不是整數對象的映射屬性

<s:iterator value="#actComments.lstEntities"> 
      <tr> 
       <td width="15%" align="left"><s:textfield name="propType" 
        readonly="true" value="%{#attr.propertyTypeName}" 
        cssStyle="width:80px;font-size:11px;" /></td> 
       <td width="85%" align="left"><s:select 
        name="hmMapComment[%{#attr.propertyTypeId}]" 
        cssStyle="font-size:11px;width:457px;margin-bottom:3px" 
        headerKey="0" headerValue="-- Select Comment --" list="comments" 
        listKey="commentId" listValue="commentText" /></td> 
      </tr> 
     </s:iterator> 

回答

0

在你吸氣的聲明,你有HashMap的聲明包含適當的類型(即HashMap的<字符串,整數>),或者你只是把它作爲「的HashMap」?這是我的理解,如果你沒有在getter簽名中指定類型,返回的對象將被評估爲字符串。


編輯:如果您使用以下JDK 1.5,你可以做一個'ClassName'-conversion.properties文件在你的classpath中爲相應的動作類(或者也許是因爲actComments,不知道)。這將允許您告訴類型轉換代碼是什麼類型。

添加一行

Element-lastEntities=com.yourcompany.WhateverObject 

我不知道你是怎麼做的子元素,你是否不得不指定元素,actComments.lstEntities或別的東西。我會試着擺弄那個。

+0

嗨,我使用的是JDK1.4。所以我不能使用泛型。我需要在哪裏聲明它?我是否需要使用類似轉換的內容。如果是的話如何使用它? – Jothi 2010-08-12 05:37:48

相關問題