我用STRUTS做了一个简单的登陆但是一运行就报创建BEAN错误,我现在把我做的几个页面和几个文件给大家看看给指点一下。INDEX。JSP<%@ page language="java" import="java.util.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page </title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page.second <br>
<%@page pageEncoding="GBK" contentType="text/html; charset=gb2312" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title></title>
</head>
<body>
<form name="form1" method="post" action="logincheck.do">
<table width="300" border="0" cellspacing="0" cellpadding="0">
<tr align="center">
<td colspan="2">??????</td>
</tr>
<tr>
<td>???</td>
<td>
<input name="username" type="text" id="username" size="12">user
</td>
</tr>
<tr>
<td>????</td>
<td>
<input name="password" type="text" id="password" size="12"> 123456
</td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="??"></td>
</tr>
</table>
</form>
</body>
</html>
</body>
</html>STRUTS-CONFIG。XML<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="loginForm" type="com.yourcompany.struts.form.LoginForm" /> </form-beans> <global-exceptions />
<global-forwards />
<action-mappings >
<action path="/logincheck" type="com.yourcompany.struts.action.LoginAction" name="loginForm" scope="request" validate="false">
<forward name="success" path="/welcome.jsp"/>
<forward name="failed" path="/failed.jsp"/>
</action>
</action-mappings> <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
ACTION
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.LoginForm;
import java.io.IOException;
import java.io.PrintWriter;
import com.yourcompany.struts.form.LoginForm;
import com.is.form.Mysqlmethod;
import com.is.module.*;
/**
* MyEclipse Struts
* Creation date: 10-28-2005
*
* XDoclet definition:
* @struts:action validate="true"
*/
public class LoginAction extends Action { // --------------------------------------------------------- Instance Variables // --------------------------------------------------------- Methods /**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @param out
* @return ActionForward
*/
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response, Object out) {
String encoding = request.getCharacterEncoding();
if ((encoding != null) && (encoding.equalsIgnoreCase("GB2312"))) { response.setContentType("text/html; charset=GB2312"); } else { response.setContentType("text/html; charset=GBK"); }
try {
if (form instanceof LoginForm) { LoginForm theForm = (LoginForm) form;
String user=theForm.getUsername();
String pass=theForm.getPassword();
Mysqlmethod my=new Mysqlmethod(user,pass);
theForm=my.getLoginForm();
if(theForm==null||theForm.equals("")) {
return mapping.findForward("success"); }
else {
return mapping.findForward("failed");
}
}
} catch (Exception e) { }
// this shouldn't happen in this example
return null;
}
}
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page </title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page.second <br>
<%@page pageEncoding="GBK" contentType="text/html; charset=gb2312" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title></title>
</head>
<body>
<form name="form1" method="post" action="logincheck.do">
<table width="300" border="0" cellspacing="0" cellpadding="0">
<tr align="center">
<td colspan="2">??????</td>
</tr>
<tr>
<td>???</td>
<td>
<input name="username" type="text" id="username" size="12">user
</td>
</tr>
<tr>
<td>????</td>
<td>
<input name="password" type="text" id="password" size="12"> 123456
</td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" name="Submit" value="??"></td>
</tr>
</table>
</form>
</body>
</html>
</body>
</html>STRUTS-CONFIG。XML<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="loginForm" type="com.yourcompany.struts.form.LoginForm" /> </form-beans> <global-exceptions />
<global-forwards />
<action-mappings >
<action path="/logincheck" type="com.yourcompany.struts.action.LoginAction" name="loginForm" scope="request" validate="false">
<forward name="success" path="/welcome.jsp"/>
<forward name="failed" path="/failed.jsp"/>
</action>
</action-mappings> <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
ACTION
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.LoginForm;
import java.io.IOException;
import java.io.PrintWriter;
import com.yourcompany.struts.form.LoginForm;
import com.is.form.Mysqlmethod;
import com.is.module.*;
/**
* MyEclipse Struts
* Creation date: 10-28-2005
*
* XDoclet definition:
* @struts:action validate="true"
*/
public class LoginAction extends Action { // --------------------------------------------------------- Instance Variables // --------------------------------------------------------- Methods /**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @param out
* @return ActionForward
*/
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response, Object out) {
String encoding = request.getCharacterEncoding();
if ((encoding != null) && (encoding.equalsIgnoreCase("GB2312"))) { response.setContentType("text/html; charset=GB2312"); } else { response.setContentType("text/html; charset=GBK"); }
try {
if (form instanceof LoginForm) { LoginForm theForm = (LoginForm) form;
String user=theForm.getUsername();
String pass=theForm.getPassword();
Mysqlmethod my=new Mysqlmethod(user,pass);
theForm=my.getLoginForm();
if(theForm==null||theForm.equals("")) {
return mapping.findForward("success"); }
else {
return mapping.findForward("failed");
}
}
} catch (Exception e) { }
// this shouldn't happen in this example
return null;
}
}
MYSQLMETHOD
public class Mysqlmethod {
private Connection con=null;
private String username="";
private String password="";
private PreparedStatement pstm=null;
private ResultSet rs=null;
private LoginForm log=null;
public Connection Getcon() throws SQLException
{
try {
Class.forName("org.gjt.mm.mysql.Driver");
con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/strutsdb?user=root&" +
"pasword=&useUnicode=true&characterEncoding=gbk");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
public Mysqlmethod()
{
}
public Mysqlmethod(String username,String password)
{
this.username=username;
this.password=password;
}
public LoginForm getLoginForm() throws ClassNotFoundException, SQLException
{
LoginForm log=null;
System.out.print("1");
con=Getcon();
try
{
System.out.print("2");
String sql="select * from message where username=? and password=?";
System.out.print("3");
pstm=con.prepareStatement(sql);
pstm.setString(1,username);
System.out.print("4");
pstm.setString(2,password);
System.out.print("5");
System.out.print("6");
rs=pstm.executeQuery();
System.out.print("7"); if(rs.next())
{
log=new LoginForm(rs.getString(1),rs.getString(2));
}
}
catch(SQLException e)
{
e.printStackTrace();
}
return log;
}
// public static void main(String []args) throws SQLException
// {
// System.out.print("f");
// LoginForm log=null;
// Mysqlmethod m=new Mysqlmethod("test","test");
// try {
// System.out.print("g");
// log=m.getLoginForm();
// if(log==null||log.equals(""))
// System.out.print("C!");
// else
// System.out.print(log.getUsername());
// System.out.print(log.getPassword());
// } catch (ClassNotFoundException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// System.out.print("h");
// }
}
FORMBENpublic class LoginForm extends ActionForm { // --------------------------------------------------------- Instance Variables /** password property */
private String password; /** username property */
private String username; // --------------------------------------------------------- Methods
public LoginForm(String username,String password)
{
this.username=username;
this.password=password;
}
/**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
public ActionErrors validate(
ActionMapping mapping,
HttpServletRequest request) { throw new UnsupportedOperationException(
"Generated method 'validate(...)' not implemented.");
} /**
* Method reset
* @param mapping
* @param request
*/
// public void reset(ActionMapping mapping, HttpServletRequest request) {
//
// throw new UnsupportedOperationException(
// "Generated method 'reset(...)' not implemented.");
// } /**
* 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 username.
* @return String
*/
public String getUsername() {
return username;
} /**
* Set the username.
* @param username The username to set
*/
public void setUsername(String username) {
this.username = username;
}}上面的代码一运行就报这个错误2005-10-31 11:22:13 org.apache.struts.util.RequestUtils createActionForm
严重: Error creating form bean of class com.yourcompany.struts.form.LoginForm
java.lang.InstantiationException: com.yourcompany.struts.form.LoginForm
at java.lang.Class.newInstance0(Class.java:293)
at java.lang.Class.newInstance(Class.java:261)
at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:231)
at org.apache.struts.util.RequestUtils.createActionForm(RequestUtils.java:837)
at org.apache.struts.action.RequestProcessor.processActionForm(RequestProcessor.java:364)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:253)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:563)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:209)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:670)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:517)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:575)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:666)
at java.lang.Thread.run(Thread.java:534)
请各位大侠帮个忙吧,救救我这个出学者吧!!!!!