Java - struts!!ayuda!!

   
Vista:

struts!!ayuda!!

Publicado por soFila (26 intervenciones) el 12/05/2009 17:30:11
Tengo creada una pagina donde hay un formulario para hacer un ingreso de usuario, pero cuando ingreso usuario y contraseña y apreto el boton enviar apraece este error: (mas abajo posteo mi web.xml y mi struts-config creo q el error esta ahi)si alguien puede ayudarme ...gracias!!

type Informe de Excepción
mensaje
descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.
excepción
javax.servlet.ServletException
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
causa raíz
java.lang.NullPointerException
distribuidora.actions.LoguinAction.execute(LoguinAction.java:24)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

<?xml version="1.0" encoding="Shift_JIS"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-tiles</taglib-uri>
<taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
</taglib>
</web-app>

<?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>
</data-sources>
<form-beans>
<form-bean name="LoguinForm" type="distribuidora.forms.LoguinForm"/>
</form-beans>
<global-exceptions>
</global-exceptions>
<global-forwards>
<forward name="index" path="/index.do"></forward>
</global-forwards>
<action-mappings>
<action path="/index" forward="/index.jsp"></action>
<action name="LoguinForm" path="/Loguin" scope="session" type="distribuidora.actions.LoguinAction">
<forward name="succes" path="/jsp/admin.jsp"> </forward>
<forward name="failure" path="/index.jsp"></forward></action>
<action path="/cerrar" type="distribuidora.actions.LoguinActionOut">
<forward name="index" path="/index.jsp"/>
</action>
</action-mappings>
<controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
<message-resources parameter="MessageResources"/>
<plug-in className="org.apache.struts.tiles.TilesPlugin">
<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml"/>
<set-property property="moduleAware" value="true"/>
</plug-in>
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
</struts-config>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:struts!!ayuda!!

Publicado por 1a2a3a4a (57 intervenciones) el 12/05/2009 18:13:42
Nullpointer here -> distribuidora.actions.LoguinAction.execute(LoguinAction.java:24)

Mira tu codigo LoguinAction la linea 24 , hay un null por ahi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por soFila (26 intervenciones) el 12/05/2009 18:21:46
package distribuidora.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

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 distribuidora.forms.LoguinForm;

public class LoguinAction extends org.apache.struts.action.Action {
private final static String SUCCES="succes";
private final static String FAILURE="failure";

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response )
throws Exception{
LoguinForm log_form=(LoguinForm) form;
String Usuario=log_form.getUser();
String Passw=log_form.getPass();
if(Usuario.equals("admin")&& Passw.equals("admin")){ //LINEA 24
HttpSession sesion_actual=request.getSession(true);
sesion_actual.setAttribute("USER", Usuario);
return mapping.findForward(SUCCES);

}else{
return mapping.findForward(FAILURE);
}


}


}
QUIERE DECIR QUE NO ME TOMA USUARIO Y CONTRASEÑA?PORQUE?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por 1a2a3a4a (57 intervenciones) el 12/05/2009 18:28:24
al parecer getUser() o getPass() estan trayendo nulls, como esta definido tu form? y tu jsp del formulario
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por soFila (26 intervenciones) el 12/05/2009 18:42:54
mi LoguinForm
package distribuidora.forms;

import org.apache.struts.action.ActionForm;

@SuppressWarnings("serial")
public class LoguinForm extends org.apache.struts.action.ActionForm {
private String user, pass;

public String getUser(){
return user;}

public String getPass(){
return pass;
}

public void SetUser(String user){
this.user=user;
}

public void SetPass(String pass){
this.pass=pass;
}
}

mi jsp, el fomulario es el de logueo que se encuentra entre <div encabezado>
<%@ page language="java" %>

<%@ taglib uri="/tags/struts-bean" prefix="bean" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="title" content="Distribuidora Artículos Librería" />
<meta name="author" content="Vanesa Mottura" />
<meta name="subject" content="Venta insumos libreria" />
<meta name="rating" content="Mayorista-minoritsta de insumos libreria" />
<meta name="description" content="página para consultar artículos a la venta y contactarse con la distribuidora" />
<meta name="abstract" content="página para consultar artículos de librería" />
<meta name="keywords" content="distribuidora,articulos,libreria,rosario,santa fe,argentina" />
<meta name="language" content="sp" />
<meta name="robots" content="all" />

<title>Distribuidora Dique</title>
<link href="CSS/div.css" rel="stylesheet" type="text/css"/>
<link rel="icon" type="image/png" href="imagenes/dise/icono.png"/>

<script type="text/javascript" src="validacion.js"></script>

</head>

<body>
<div id="encabezado">
<div id="logo" >
<img src="imagenes/dise/logo_probar.png" alt="Logo Empresa" name="logo"/>
</div>
<div id="ingreso">
<html:form action="/Loguin" onsubmit="return validarUsu();">
<table summary="Ingreso Administrador">
<tr><th class="Estilo11" abbr="acceso"> Acceso</th>
<th class="Estilo11" abbr="acceso">Solo Administrador</th></tr>
<tr>
<td><span class="Estilo11"><label>Usuario</label></span></td>
<td><html:text property="user" alt="Ingreso usuario" /></td>
</tr>
<tr>
<td><span class="Estilo11"><label>Contraseña</label></span></td>
<td><html:password property="pass" alt="Ingreso contraseña"/></td>
</tr>
</table>
<div class="boton"><html:submit value="Enviar"/></div>
</html:form>
</div>
</div>

<div id="navegación"><a href="index.php">Inicio</a>/Página Principal</div>
....
.....

</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por 1a2a3a4a (57 intervenciones) el 12/05/2009 18:57:54
ps yo no uso struts xD, pero aver loguea que te trae :

String Usuario=log_form.getUser();
String Passw=log_form.getPass();

Usuario y Passw ? te traen datos o no ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por mario (622 intervenciones) el 12/05/2009 19:12:31
El problema es que sabes hacer Java Beans

en la clase Form tienes el siguente codigo

public void SetUser(String user){
this.user=user;
}

public void SetPass(String pass){
this.pass=pass;
}

los metodos set son incorrectos, deben ser:

public void setUser(String user){
this.user=user;
}

public void setPass(String pass){
this.pass=pass;
}

por eso cuando struts trata de colocar los valores de user y pwd en el objeto no coloca nada y por eso te da el Null Pointer
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por soFila (26 intervenciones) el 12/05/2009 19:17:35
Si!!!!!muchas gracias!!!era eso...solo la mayúscula en los Set causaba eso?no entiendo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por 1a2a3a4a (57 intervenciones) el 12/05/2009 19:26:25
An ActionForm is a JavaBean optionally associated with one or more ActionMappings. Such a bean will have had its properties initialized from the corresponding request parameters before the corresponding Action.execute method is called.

Convenciones JavaBean

Para funcionar como una clase JavaBean, una clase debe obedecer ciertas convenciones sobre nomenclatura de métodos, construcción, y comportamiento.

Estas convenciones permiten tener herramientas que puedan utilizar, reutilizar, sustituir, y conectar JavaBeans.

Las convenciones requeridas son:

* Debe tener un constructor sin argumentos.
* Sus propiedades deben ser accesibles mediante métodos get y set que siguen una convención de nomenclatura estándar.
* Debe ser serializable.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:struts!!ayuda!!

Publicado por soFila (26 intervenciones) el 12/05/2009 19:14:27
no los dos con null...mmm y no c xq?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar