index.jsp
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<html>
<head>
<title>ActionForm Samples</title>
<link href="css/style.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<h1>ActionForm Sample</h1>
<ul>
<LI><html:link page="/lazyDynaFormInput.jsp">Lazy Dyna Action Form</html:link></LI>
</ul>
</body>
</html>
lazyDynaFormInput.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>Dyna Action Form</title>
</head>
<body>
<h2>Dyna Action Form</h2>
Your First Name:<bean:write name="lazyDynaForm" property="firstName"/><br />
Your Last Name:<bean:write name="lazyDynaForm" property="lastName"/><br />
Your Friends:<br />
Friend 1: <bean:write name="lazyDynaForm" property="friend[0].name"/><br />
Friend 2: <bean:write name="lazyDynaForm" property="friend[1].name"/><br />
Friend 3: <bean:write name="lazyDynaForm" property="friend[2].name"/><br />
</body>
</html>
struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="lazyDynaForm" type="org.apache.struts.validator.LazyValidatorForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="lazyDynaForm"
input="/lazyDynaFormInput.jsp"
name="lazyDynaForm"
path="/lazyDynaForm"
scope="request"
type="cn.hxex.actionform.struts.action.LazyDynaFormAction"
validate="false">
<forward name="display" path="/lazyDynaForm.jsp" />
</action>
</action-mappings>
<message-resources parameter="cn.hxex.actionform.struts.ApplicationResources" />
</struts-config>
LazyDynaFormAction.java
//Created by MyEclipse Struts
// XSL source (default): platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_4.1.0/xslt/JavaClass.xsl
package cn.hxex.actionform.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.LazyValidatorForm;
/**
* MyEclipse Struts
* Creation date: 06-04-2006
*
* XDoclet definition:
* @struts.action path="/lazyDynaForm" name="lazyDynaForm" input="/lazyDynaFormInput.jsp" scope="request"
* @struts.action-forward name="display" path="/lazyDynaForm.jsp"
*/
public class LazyDynaFormAction extends Action {
// --------------------------------------------------------- Instance Variables
// --------------------------------------------------------- Methods
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
LazyValidatorForm lazyDynaForm = (LazyValidatorForm) form;
String firstName = (String)lazyDynaForm.get("firstName");
String lastName = (String)lazyDynaForm.get("lastName");
String friend1 = (String)lazyDynaForm.get("friend[0].name");
return mapping.findForward("display");
}
}
lazyDynaForm.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>Dyna Action Form</title>
</head>
<body>
<h2>Dyna Action Form</h2>
Your First Name:<bean:write name="lazyDynaForm" property="firstName"/><br />
Your Last Name:<bean:write name="lazyDynaForm" property="lastName"/><br />
Your Friends:<br />
Friend 1: <bean:write name="lazyDynaForm" property="friend[0].name"/><br />
Friend 2: <bean:write name="lazyDynaForm" property="friend[1].name"/><br />
Friend 3: <bean:write name="lazyDynaForm" property="friend[2].name"/><br />
</body>
</html>