advertisement
javaboutique
Search Tips
Articles  |   Tutorials  |   Reviews  |   Tools  |   by Category  |   by Date  |   by Name  |   Submit  |   Source  |   Forums  |  
javaboutique
Browse DevX


Partners & Affiliates











advertisement

Tutorials : Building a sample Web App with STRUTS :

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]

How to Add Java Applets to Your Site

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.

 Microsoft Visual Studio 2010 Showcase
 Avaya Developer Showcase
 MSDN Spotlight
 PHP for Windows Showcase
XML error: undefined entity at line 39
advertisement
Receive Articles via our XML/RSS feed
Receive Articles via our XML/RSS feed

JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for Windows 95, 98, ME, NT, 2000 and XP. It's designed to automatically optimize your Windows settings, boosting your Internet connection up to 200%.

Windows 7: From Beta to Final Code in One Year
Google Shows Off Chrome OS, Releases Source
Microsoft Shows Off Silverlight 4, IE9 Plans
Metasploit Expands Vulnerability Test Framework
HyperCard Reborn?
Fedora 12 Takes Aim at Linux Networking
Top Supercomputer Nearly Doubles in Speed
Fedora 12 Linux Tackles Virtualization
Apple Gives iPhone Developers App Status Tracker
Novell Sets OpenSUSE 11.2 Free

Creating Custom Export Filters for StarOffice with XSLT
WPF Wonders: Using DataTemplates
Crystal Reports Family Offers Options for Developers
Avaya Aura Session Manager video
Avaya Aura Overview video
Exploring HTML 5's Audio/Video Multimedia Support
Overriding Virtual Functions? Use C++0x Attributes to Avoid Bugs.
Understanding the Cloud Computing Security Vulnerabilities
Cisco and IBM Target a Greener World
Upgrade to Visual Studio 2010 with the Ultimate Offer

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs