注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

骇客归来

ぁ枫あ

 
 
 

日志

 
 

Struts Tag Usage  

2009-02-27 16:50:35|  分类: Struts2 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
<a href="<s:url value='/linkto/%{myobject.id}'/>"> Blah </a>
<===========================================================>
<s:iterator value="cart.items" status="rowstatus">
  <s:hidden name="cart.items[%{#rowstatus.index}].productId" value="%{productId}">
  <s:textfield name="cart.items[%{#rowstatus.index}].qty" value="%{qty}" />
  <s:textfield name="cart.items[%{#rowstatus.index}].note" value="%{note}" />
</s:iterator>

 


<s:iterator value="cart.items" status="rowstatus">
  <s:hidden name="'cart.items[' + #rowstatus.index + '].productId'" value="productId">
  <s:textfield name="'cart.items[' + #rowstatus.index + '].qty'" value="qty" />
  <s:textfield name="'cart.items[' + #rowstatus.index + '].note'" value="note" />
</s:iterator>

 


#foreach ( $item in $cart.items )
  #set($index = $velocityCount - 1)
  <input type="hidden" name="cart.items[$index].productId" value="$item.productId">
  <input type="text" name="cart.items[$index].qty" value="$item.qty">
  <input type="text" name="cart.items[$index].note" value="$item.note">
#end

<!=============================================================================================================================>
<s:iterator value="someBeanList" status="stat">
<s:text name="startTime" />
<s:textfield name="someBeanList[%{#stat.index}].startTime"
        value="%{someBeanList[#stat.index].startTime}"  size="4" maxlength="4"
        onkeypress="return numbersonly(this, event)" />
<s:text name="endTime" />
<s:textfield name="someBeanList[%{#stat.index}].endTime"
        value="%{someBeanList[#stat.index].endTime}" size="4" maxlength="4"
        onkeypress="return numbersonly(this, event)" />
</s:iterator>



<!=============================================================================================================================>
So it looks like the conversionError interceptor worked properly.

Action class:
private List<SomeBean> someBeanList;  // ArrayList

SomeBean class:
private Date startTime;
private Date endTime;

// getters and setters here

SomeBean-conversion.properties:
startTime=com.package.converter.TimeConverter
endTime=com.package.converter.TimeConverter

TimeConverter:

public class TimeConverter extends StrutsTypeConverter {

    @SuppressWarnings("unchecked")
    @Override
    public Object convertFromString(Map context, String[] paramValues, Class toClass) {
        String timeString = paramValues[0];
       
        DateFormat df = getDateFormat();
       
        try {
            return df.parse(timeString);
        } catch (ParseException pe) {
            throw new TypeConversionException(pe);
        }
    }

    @SuppressWarnings("unchecked")
    @Override
    public String convertToString(Map context, Object objToConvert) {
        if (objToConvert == null) {
            return ""; //$NON-NLS-1$
        }
       
        DateFormat df = getDateFormat();
        return df.format((Date)objToConvert);
    }
   
    private DateFormat getDateFormat() {
        DateFormat df = new SimpleDateFormat("HHmm"); //$NON-NLS-1$
        df.setLenient(false);
        return df;
    }


<=============================================================================================>
<%@ taglib prefix="s" uri="/struts-tags" %>
<h2>Edit bookmark</h2>
<s:form action="editBookmark">
<input type="hidden" name="oldName" value="<s:property value="%{oldName}"/>"/><!--关键点 -->
<table>
<s:textfield name="name" label="Name" value="%{oldName}"/><!--关键点 注意与上面的区别-->
<s:textfield name="url" label="URL"/>
<s:submit value="Update"/>
</table>
</s:form>



<=============================================================================================>

<package name="edit" extends="struts-portlet-default" namespace="/edit">
<action name="index" class="com.mycompany.AddBookmarkAction">
<result type="redirectAction">
<param name="actionName">index!input</param><!--关键点 -->
</result>
<result name="input">/WEB-INF/jsp/edit/index.jsp</result>
</action>
</package>


<=============================================================================================>

<%@ taglib prefix="s" uri="/struts-tags" %>
<strong>Bookmarks</strong>
<p>
<table>
<s:iterator value="%{bookmarks}" var="bookmark">
<tr>
<td><s:property value="%{name}"/></td>
<td><a href="<s:property value="%{url}"/>" target="_blank"><s:property value="%{url}"/></a></td><!--关键点 -->
</tr>
</s:iterator>
</table>
</p>

<=============================================================================================>

<%@ taglib prefix="s" uri="/struts-tags" %>
<h2>Manage bookmarks</h2>
<p>
<table>
<s:iterator value="%{bookmarks}" var="bookmark"><!--关键点 -->
<s:url action="editBookmark!input" id="editUrl"><!--关键点 -->
<s:param name="oldName" value="%{name}"/>
</s:url>
<s:url action="deleteBookmark" portletUrlType="action" id="deleteUrl"><!--关键点 portal专用 -->
<s:param name="bookmarkName" value="%{name}"/>
</s:url>
<tr>
<td><s:property value="%{name}"/></td>
<td><a href="<s:property value="%{url}"/>" target="_blank"><s:property value="%{url}"/></a></td>
<td><a href="<s:property value="%{editUrl}"/>">Edit</a></td>
<td><a href="<s:property value="%{deleteUrl}"/>">Delete</a></td>
</tr>
</s:iterator>
</table>
</p>
<s:form action="addBookmark">
<table>
<s:textfield name="name" label="Name"/>
<s:textfield name="url" label="URL"/>
<s:submit value="Add"/>
</table>
</s:form>


<=============================================================================================>

<package name="edit" extends="struts-portlet-default" namespace="/edit">
<action name="index" class="com.mycompany.ListBookmarksAction">
<result>/WEB-INF/jsp/edit/index.jsp</result>
</action>
<action name="addBookmark" class="com.mycompany.AddBookmarkAction">
<result type="redirectAction"><!--关键点  portal专用-->
<param name="actionName">index</param>
</result>
</action>
</package>

  评论这张
 
阅读(131)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017