domingo, 7 de octubre de 2012

Iniciándose con Struts2.0 y Netbeans

Struts2.0 es hoy en día uno de los frameworks más demandados en el mercado. La facilidad de su uso así como las prestaciones que tiene hacen que muchas veces reemplaze al muy conocido JSF2.0. En este artículo les mostraré la manera de cómo empezar a desarrollar proyectos usando este framework.

Los pasos son los siguientes:

1. Creamos un proyecto web con netbeans.


2. Establecemos el nombre de nuestro proyecto.


3. Seleccionamos glassfish como servidor de aplicaciones.


4. No marcamos ningún framework pues nosotros mismos vamos a configurar nuestro framework.


5. Ahora descargamos las librerías disponibles en el siguiente enlace: librerías de struts2.0. Y las agregamos a nuestro proyecto de tal manera que nuestro proyecto quede así:


Se recomienda copiar todos los archivos *.jar a una carpeta dentro de nuestro proyecto para no tener problemas de referencias al cambiar de entorno de trabajo.

6. Creamos el archivo de configuración web.xml




Y editamos el archivo creado de tal modo que nos quede algo así:
<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">
             
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
</web-app>
7. Y ahora creamos el archivo de configuración de Struts.



Como nombre de archivo le ponemos struts y finalizamos el asistente.

8. Ahora editamos el archivo con el siguiente código:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="false" />
    
    <package name="default" extends="struts-default">
        <action name="Login" class="actions.Login">
            <result>/bienvenido.jsp</result>
            <result name="input">/index.jsp</result>
        </action>
    </package>
</struts>
9. Luego creamos el paquete actions y a continuación la clase Login.





10. Editamos la clase Login.
package actions;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator;
import com.opensymphony.xwork2.validator.annotations.StringLengthFieldValidator;

/**
 *
 * @author Java
 */
public class Login extends ActionSupport {

    private String usuario;
    private String clave;

    public String getClave() {
        return clave;
    }

    @RequiredStringValidator(message = "Campo clave es requerido", trim = true)
    @StringLengthFieldValidator(message = "Campo clave debe tener mìnimo 5 caracteres", trim = true, minLength = "5")
    public void setClave(String clave) {
        this.clave = clave;
    }

    public String getUsuario() {
        return usuario;
    }

    @RequiredStringValidator(message = "Nombre de Usuario es requerido", trim = true)
    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }

    @Override
    public String execute() throws Exception {
        if (getUsuario().equals("user") && getClave().equals("123456")) {
            return SUCCESS;
        }
        return INPUT;
    }
}
11. Ahora es el turno del archivo index
<%-- 
    Document   : index
    Created on : 23-ago-2012, 19:21:55
    Author     : Java
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Primera aplicación en Struts 2</title>
    </head>
    <body>
        <h1>Login de usuario</h1>
        <s:form action="Login">
            <s:textfield name="usuario" label="Usuario"/>
            <s:password name="clave" label="Clave"/>
            <s:submit/>
        </s:form>
    </body>
</html>
12. Y también debemos crear el archivo bienvenido.jsp


 

Y editamos su contenido.
<%-- 
    Document   : bienvenido
    Created on : 23-ago-2012, 20:54:16
    Author     : Java
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Bienvenido <s:property value="usuario"/></h1>
        <h2>La clave ingresada fué <s:property value="clave"/></h2>
    </body>
</html>
Con eso sería suficiente, desplegamos nuestro proyecto y ya tenemos nuestra primera aplicación con struts2.

Saludos y hasta una próxima oportunidad.

1 comentario:

  1. gracias maestro, muy bien explicado...de ahi en afelante q mas se hace........

    ResponderEliminar