struts.config.xml文件:(我觉得应该是这里的问题~~但好像是ok 的啊)<?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 />
  <form-beans >
    <form-bean name="loginForm" type="spring.lee.struts.form.LoginForm" />  </form-beans>  <global-exceptions />
  <global-forwards />
  <action-mappings >
    <action
      attribute="loginForm"
      input="error.jsp"
      name="loginForm"
      path="/login"
      scope="request"
      type="spring.lee.struts.action.LoginAction" >
     <forward name="suc" path="/suc.jsp"></forward>
 <forward name="fai" path="/fai.jsp"></forward>
</action>
  </action-mappings>  <message-resources parameter="spring.lee.struts.ApplicationResources" />
</struts-config>登录页面:
<%@ page language="java" contentType="text/html;charset=gb2312"%><%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html lang="true">
  <head>
    <html:base />
    
    <title>login.jsp</title>  </head>
  
  <body>
   <html:form action="login.do" method="post">
   名字:<html:text property="name"></html:text><br>
   密码:<html:password property="password"></html:password>
   <html:submit  value="提交"></html:submit>
   <html:reset  value="重置"></html:reset>
   </html:form>
  </body>
</html:html>还有一个frombean:
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package spring.lee.struts.form;import javax.servlet.http.HttpServletRequest;import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;/** 
 * MyEclipse Struts
 * Creation date: 11-17-2007
 * 
 * XDoclet definition:
 * @struts.form name="loginForm"
 */
public class LoginForm extends ActionForm {
/*
 * Generated fields
 */ /** password property */
private String password; /** name property */
private String name; /*
 * Generated Methods
 */ /** 
 * Method validate
 * @param mapping
 * @param request
 * @return ActionErrors
 */
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
ActionErrors err=new ActionErrors();

if(this.name==null||this.name.equals("")){
err.add("name", new ActionMessage("name_null"));
}
if(this.password==null|| this.password.equals("")){
err.add("name", new ActionMessage("password_null"));
}
return err;
} /** 
 * Method reset
 * @param mapping
 * @param request
 */
public void reset(ActionMapping mapping, HttpServletRequest request) {
// TODO Auto-generated method stub
} /** 
 * Returns the password.
 * @return String
 */
public String getPassword() {
return password;
} /** 
 * Set the password.
 * @param password The password to set
 */
public void setPassword(String password) {
this.password = password;
} /** 
 * Returns the name.
 * @return String
 */
public String getName() {
return name;
} /** 
 * Set the name.
 * @param name The name to set
 */
public void setName(String name) {
this.name = name;
}
}

一个action:
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package spring.lee.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 spring.lee.struts.form.LoginForm;/** 
 * MyEclipse Struts
 * Creation date: 11-17-2007
 * 
 * XDoclet definition:
 * @struts.action path="/login" name="loginForm" input="/form/login.jsp" scope="request" validate="true"
 */
public class LoginAction extends Action {
/*
 * Generated Methods
 */ /** 
 * Method execute
 * @param mapping
 * @param form
 * @param request
 * @param response
 * @return ActionForward
 */
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginForm loginForm = (LoginForm) form;
String name=loginForm.getName();
String password=loginForm.getPassword();
if(name.equals("lee")&& password.equals("123")){
return mapping.findForward("suc");
}else{
return mapping.findForward("fai");
}

}
}
最后一个资源文件:# Resources for parameter 'spring.lee.struts.ApplicationResources'
# Project StrutsDemoname_null = <h1>please input your name~~~~~~</h1>
password = <h1>please input your password!!!!!!!!!</h1>

解决方案 »

  1.   

    主要是点login。jsp时就出现了那个问题
      

  2.   

    和我一样的问题,我整个项目的JSP  有表单的都有这问题
    我项目是以前做的  JDK  TOMCAT 版本都和现在不一样了
    同样问题,我也敢保证所有配置都正确有高人说版本的问题
      

  3.   

    把struts.config.xml文件中的action-mappings中的input属性去掉看一下!
      

  4.   

      <html:form   action= "login.do "   method= "post "> 
    改成
      <html:form   action= "/login "   method= "post "> 就OK了。。
    不行的话把报错的的东西贴出来。
      

  5.   

    我觉得这个问题有点怪头怪脑的,前几天没事学习SSH,用的是Struts1.2+Spring2.0+Hibernate3.0最开始我在TOMCAT5.5上面运行这个小例子,出了两个警告,程序无法正常运行,在网上找了一些资料后把TOMCAT5.5换成了6.0,然后就遇到了和LZ一样的问题.查看配置N遍后觉得确实没有问题,但运行然后报错,后来干脆直接在地址栏请求*.do?method=**,奇怪的事情发生了,居然进到了我的页面.增加数据....操作一切正常.再直接请求页面,也不报错了...
    奇怪的事情再次发生了,当我重启服务,直接进入页面时那个错又来了.郁闷呀....麻烦有相同经历的高手指点一下...
      

  6.   

    哈哈,分析检查了一下,原来是WEB.XML启动顺序的问题,解决了!
      

  7.   

    我也遇到过这问题,解决办法请查看:
    http://hi.baidu.com/jianzl/blog/item/281994c6e54ce1c138db497e.html
      

  8.   

    我也遇到过这问题,解决办法请查看:
    http://hi.baidu.com/jianzl/blog/item/281994c6e54ce1c138db497e.html