Olá novamente pessoal,
Procurei no forum para ver c jah havia acontecido este erro, porem não achei 
Acontece o seguinte, to mechendo com o framework validator e da o seguinte erro no browse:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: No getter method for property: "loginName" of bean: "org.apache.struts.validator.DynaValidatorForm"
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
root cause
javax.servlet.ServletException: No getter method for property: "loginName" of bean: "org.apache.struts.validator.DynaValidatorForm"
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp.LoginStruts_jsp._jspService(LoginStruts_jsp.java:77)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
root cause
javax.servlet.jsp.JspException: No getter method for property: "loginName" of bean: "org.apache.struts.validator.DynaValidatorForm"
org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:987)
org.apache.struts.taglib.html.BaseFieldTag.prepareValue(BaseFieldTag.java:121)
org.apache.struts.taglib.html.BaseFieldTag.renderInputElement(BaseFieldTag.java:102)
org.apache.struts.taglib.html.BaseFieldTag.doStartTag(BaseFieldTag.java:81)
org.apache.jsp.LoginStruts_jsp._jspx_meth_html_text_0(LoginStruts_jsp.java:177)
org.apache.jsp.LoginStruts_jsp._jspx_meth_html_form_0(LoginStruts_jsp.java:134)
org.apache.jsp.LoginStruts_jsp._jspx_meth_html_html_0(LoginStruts_jsp.java:103)
org.apache.jsp.LoginStruts_jsp._jspService(LoginStruts_jsp.java:69)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
Não entendo, como declarar um metodo “get” para uma propriedade, se a classe eh do proprio framwork ?
Eis os arquivos de configuração:
struts-config.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<struts-config>
<form-beans>
<form-bean name="loginForm" type="org.apache.struts.validator.DynaValidatorForm"/>
<form-property name="loginName" type="java.lang.String"/>
<form-property name="password" type="java.lang.String"/>
</form-beans>
<global-forwards>
<forward name="welcome" path="/Welcome.do"/>
<forward name="login" path="/Login.do"/>
</global-forwards>
<action-mappings>
<action name="loginForm" path="/login" scope="request" type="actions.LoginAction"
validate="true" input="/loginStruts.jsp">
<forward name="success" path="/success.jsp"/>
<forward name="failure" path="/failure.jsp"/>
</action>
<action path="/Login" forward="/loginStruts.jsp"/>
</action-mappings>
<controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
<message-resources parameter="com/myapp/struts/ApplicationResource"/>
<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>
<!-- ========================= Validator plugin ================================= -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
<message-resources parameter="ApplicationResources"/>
</struts-config>
validator.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
<form-validation>
<formset>
<form name="loginForm">
<field property="loginName" depends="required">
<arg0 key="error.loginname.required"/>
</field>
<field property="password" depends="required,minlength">
<arg0 key="error.password.required"/>
<var>
<var-name>minlength</var-name>
<var-value>4</var-value>
</var>
</field>
</form>
</formset>
</form-validation>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<html:html>
<head>
<title>Login Page</title>
</head>
<body>
<h1> Login Page </h1>
<br/>
<html:form action="/login">
User Name : <html:text property="loginName"/> <br/>
<html:errors property="loginName"/>
Password : <html:password property="password"/> <br/>
<html:errors property="password"/>
</br>
<html:submit/>
</html:form>
</body>
</html:html>
e a actionservlet:
package actions;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.*;
import org.apache.struts.validator.*;
import forms.LoginForm;
import javax.servlet.http.*;
public class LoginAction extends Action {
private final static String SUCCESS = "success";
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm dForm = (DynaActionForm) form;
String loginName = (String) dForm.get("loginName");
String password = (String) dForm.get("password");
//LoginForm loginForm = (LoginForm) form;
//String loginName = loginForm.getLoginName();
//String password = loginForm.getPassword();
// Verifica se é o usuário correto
if (!(loginName.equals("JEDI") && password.equals("JEDI")))
return mapping.findForward("failure");
// Armazena o resultado no session scope para uso no restante da aplicação
HttpSession session = request.getSession();
session.setAttribute("USER", loginName);
// o usuário efetuou o login com sucesso. Despacha o usuário para
// o restante da aplicação.
return mapping.findForward("success");
}
}
Nossa, o topico fico gigante… :oops:
Se puderem me ajudar, agradeço muito msm !