我使用JBX做的一个简单的基于struts1.1的添加用户的程序!有问题向大家请教,附jbx的源代码!
程序下载地址:http://www.kissjava.com/kissjava.rar
此程序是这样子的。
User.java 是用户类
UserForm.java继承 ActionForm .
AddUserAction.java 继承了 Action .
UserBean.java 处理业务,即添加用户到数据库中。
CreateUser.jsp 添加用户的页面
UserCreated.jsp 查看刚刚添加的用户的页面
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>
<form-beans>
<form-bean name="userForm" type="kissjava.UserForm" />
<form-bean name="formBean" type="javax.servlet.http.HttpServletRequest" />
</form-beans>
<global-forwards>
<forward name="userCreated" path="/userCreated.jsp" />
<forward name="error" path="/error.jsp" />
</global-forwards>
<action-mappings>
<action name="userForm" path="/createUser" type="kissjava.AddUserAction" validate="true" input="/createUser.jsp" scope="request" />
</action-mappings>
<message-resources parameter="ApplicationResources" />
</struts-config>
AddUserAction.java 内容:
package kissjava;
import org.apache.struts.action.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public final class AddUserAction extends Action{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,
HttpServletResponse response)
throws Exception
{
//UserBean Control
UserBean userBean = new UserBean();
UserForm userForm = new UserForm();
User user = new User();
user = userForm.getUser();
try{
userBean.addUser(user);
ActionMessages messages = new ActionMessages();
ActionMessage message = new ActionMessage("message.user.insert.success",user.getName());
messages.add(ActionMessages.GLOBAL_MESSAGE,message);
saveMessages(request,messages);
//put the result in request,to let the next page get this value
request.setAttribute("user",user);
return(mapping.findForward("userCreated"));
}
catch(Exception de){
ActionErrors errors = new ActionErrors();
ActionError error = new ActionError("error.user.databaseException");
errors.add(ActionErrors.GLOBAL_ERROR,error);
saveErrors(request,errors);
return(mapping.findForward("error"));
}
}
}
CreateUser.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
<html:html locale="true">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="<html:rewrite page="rr.css" />" rel="stylesheet" type="text/css">
<title>Create User</title>
</head>
<body>
<center>
<h1>Create User</h1>
<logic:messagesPresent>
<span id="errorsHeader"><bean:message key="errors.validation.header"/></span>
<html:messages id="error">
<li><c:out value="${error}"/></li>
</html:messages>
<hr>
</logic:messagesPresent>
<html:errors/>
<html:form action="createUser.do" focus="user.name" name="userForm" type="kissjava.UserForm">
<table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5">
<tr>
<td >name:</td>
<td><html:text property="user.name"/></td>
</tr>
<tr>
<td >password:</td>
<td><html:text property="user.password"/></td>
</tr>
<tr>
<td>email:</td>
<td><html:text property="user.email"/></td>
</tr>
<tr>
<td>joindate:</td>
<td><html:text property="user.joindate"/></td>
</tr>
</table>
<html:submit><bean:message key="button.submit"/></html:submit>
</html:form>
</center>
</body>
</html:html>
ViewUser.jsp
<%@ page contentType="text/html; charset=Shift_JIS" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<html:html locale="true">
<head>
<link href="<html:rewrite page="rr.css" />" rel="stylesheet" type="text/css">
<html:base/>
<title>
<bean:message key="index.title"/>
</title>
</head>
<body>
<center>
<h1>
User Created
</h1>
name:<c:out value="${requestScope.user.name}"></c:out>
password:<c:out value="${requestScope.user.password}"></c:out>
email:<c:out value="${requestScope.user.email}"></c:out>
joindate:<c:out value="${requestScope.user.joindate}"></c:out>
</center>
</body>
</html:html>
附:数据库 table user
CREATE TABLE user (
id tinyint(10) unsigned NOT NULL auto_increment,
name char(20) default '0',
password char(20) default '0',
email char(20) default '0',
joindate char(20) default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
现在,程序在 createuser.jsp 提交数据后,总是跑到error.jsp,为什么呢?求救啊!