|
4. Let's take a look at what this file contains:
The following are STRUTS tag lib definitions. These tell us we are using the STRUTS tag libraries. Please look at the STRUTS documentation for further details of these tag libraries.
< %@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
< %@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
< %@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
Every html tag that is preceded with 'HTML', 'bean' or 'logic' will be interpreted by the STRUTS framework. For example:
< html:html>
You can also have normal HTML tags in your JSP that do not need to be interpreted by STRUTS, such as:
<P>Welcome < /P>
We will use two main aspects of struts--collecting user I/P in a form bean and screen flow using action mapping.
For example look at the following form definition. It defines a, text entry box, ipString and a submit button. The form submits to an action called TestAction.
<html:form action="/TestAction">
<html:text property="ipString" size="50"/>
<html:submit property="submit" value="Submit"/>
</html:form>
We need to define a javabean for every 'form'. You could use Dynaform another STRUTS construct but this approach of creating a bean per form is simpler. Struts will automatically copy the values entered by the user into this bean and send it to the 'action handler'. Hence we will need to define an action handler per action.
5. In this JSP so far we have a text box to enter a 'string' and a button to submit the form and an action - 'TestAction'. Now we need to create a 'form' java bean corresponding to the form defined in the HTML. Remember the form has only one text entry box for ipString. Hence the bean needs to provide get and set methods for ipString. To do this create the following file: TestFormBean.java. I have created this under com/openstack/struts/testapp directory under WEB-INF/src in our project, as listed bellow.
package com.openstack.struts.testapp;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
public final class TestFormBean extends ActionForm {
private String action = "Create";
private String ipString = null;
public void reset(ActionMapping mapping, HttpServletRequest request) {
this.action = "Create";
this.ipString = "Reseted";
}
}
Basically we just need to create the fields / parameters that are part of the bean. Such as ipString. We will discuss the 'action' string later.
Generate getters and setters: In NetBeans, in the left project window, select TestFormBean.java , click to navigate to the fields. Select the fields (select multiple fields by using SHIFT key). Then while the fields are selected right click and click on tools - 'generate R/W property for the field'. This should generate the following code:
/** Getter for property action.
* @return Value of property action.
*
*/
public java.lang.String getAction() {
return action;
}
/** Setter for property action.
* @param action New value of property action.
*
*/
public void setAction(java.lang.String action) {
this.action = action;
}
/** Getter for property ipString.
* @return Value of property ipString.
*
*/
public java.lang.String getIpString() {
return ipString;
}
/** Setter for property ipString.
* @param ipString New value of property ipString.
*
*/
public void setIpString(java.lang.String ipString) {
this.ipString = ipString;
}
[Next]
New on the Java Boutique:
New Review:
Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling
API boasts simplicity, ease-of-integration, a well-rounded feature
set, and it's free!
New Applet:
Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA
sequences into three useful formats.
Elsewhere on internet.com:
WebDeveloper Java
Lots of Java information on webdeveloper.com
WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.
ScriptSearch Java
Hundreds of free Java code files to download.
jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.
|