验证密码的代码在formbean的validate方法里。
控制转向的代码在UserLoginAction里面,如下:
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package com.yourcompany.struts.action;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
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 com.yourcompany.struts.form.UserLoginForm;/**
 * MyEclipse Struts Creation date: 07-27-2007
 * 
 * XDoclet definition:
 * 
 * @struts.action path="/userLogin" name="userLoginForm" input="/userLogin.jsp"
 *                scope="request"
 * @struts.action-forward name="success" path="/userLoginSuccess.jsp"
 * @struts.action-forward name="failure" path="/userLogin.jsp"
 */
public class UserLoginAction extends Action {

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserLoginForm userLoginForm = (UserLoginForm) form;
if ((userLoginForm.getUserName().equals("fan"))
&& (userLoginForm.getPassword().equals("111"))) {
request.setAttribute("userName", userLoginForm.getUserName());
return mapping.findForward("success");
}
return mapping.findForward("failure");
}
}

解决方案 »

  1.   

    是不是我的ApplicationResources.properties写法有问题?
      

  2.   

    ClassCastException 是 JVM 在检测到两个类型间的转换不兼容时引发的运行时异常。此类错误通常会终止用户请求。
      

  3.   

    报错是由struts的标签引起的,看看是不是你的标签找不到:<%@ taglib uri="/tag/struts-html" prefix="html"%>
    <%@ taglib uri="/tag/struts-bean" prefix="bean"%>改为:
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>试试.这要看你的web.xml的内容了.
      

  4.   

    web.xml中我就是这么定义的,应该和这个没关系,当我输入用户名fan,密码111的时候,是可以正常跳转到userLoginSuccess.jsp页面的。web.xml内容如下:<?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      <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>3</param-value>
        </init-param>
        <init-param>
          <param-name>detail</param-name>
          <param-value>3</param-value>
        </init-param>
        <load-on-startup>0</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
      </servlet-mapping>
      <jsp-config>
    <taglib>
    <taglib-uri>/tag/struts-html</taglib-uri>
    <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>/tag/struts-bean</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>/tag/struts-logic</taglib-uri>
    <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
    </taglib>
      </jsp-config>
    </web-app>
      

  5.   

    ApplicationResources.properties文件是放在包:com.yourcompany.struts下面么??
      

  6.   

    是,我在页面上加入<html:message>是可以输出里面的值的
      

  7.   

    应该是struts版本问题,看看这两个链接:
      http://www.blogjava.net/mrklmxy/archive/2007/07/13/130164.aspx
      http://www.blogjava.net/mrklmxy/archive/2007/07/13/130164.aspx
      

  8.   

    上面重复了:
    http://topic.csdn.net/t/20050822/08/4222304.html