struts-config.xml 文件:
<action-mappings>
<action path="/login"
name="loginForm"
scope="request"
input="/test.jsp"
validate="false"
type="struts.TestAction"
>
<exception key="user.not.found" type="struts.UserNotFound"/>
<exception key="password.error" type="struts.PasswordIsError"/>
<forward name="success" path="/success.jsp"/>
</action>
</action-mappings>
<message-resources parameter="rec.MessageRescource"/>action:
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
TestActionForm frm =(TestActionForm)form;
String username = frm.getUsername();
String pwd = frm.getPwd();
UserManager um = new UserManager(username,pwd);
um.check();
return mapping.findForward("success");JSP 页面:
<html:messages id="msg" message="user.not.found">
<bean:write name="msg"/>
</html:messages>
<html:form method="post" action="login.do">
usrname:<html:text property="username"/><br>
password:<html:password property="pwd"/><br>
<html:submit value="sub"/>
</html:form> UserManager:
public void check(){
if(!username.equals("admin")){
throw new UserNotFound();
}
if(!pwd.equals("admin")){
throw new PasswordIsError();
}
}抛出的UserNotFound异常 无法转到 jsp 页面 ,在jsp 页面显示页面信息
<action-mappings>
<action path="/login"
name="loginForm"
scope="request"
input="/test.jsp"
validate="false"
type="struts.TestAction"
>
<exception key="user.not.found" type="struts.UserNotFound"/>
<exception key="password.error" type="struts.PasswordIsError"/>
<forward name="success" path="/success.jsp"/>
</action>
</action-mappings>
<message-resources parameter="rec.MessageRescource"/>action:
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
TestActionForm frm =(TestActionForm)form;
String username = frm.getUsername();
String pwd = frm.getPwd();
UserManager um = new UserManager(username,pwd);
um.check();
return mapping.findForward("success");JSP 页面:
<html:messages id="msg" message="user.not.found">
<bean:write name="msg"/>
</html:messages>
<html:form method="post" action="login.do">
usrname:<html:text property="username"/><br>
password:<html:password property="pwd"/><br>
<html:submit value="sub"/>
</html:form> UserManager:
public void check(){
if(!username.equals("admin")){
throw new UserNotFound();
}
if(!pwd.equals("admin")){
throw new PasswordIsError();
}
}抛出的UserNotFound异常 无法转到 jsp 页面 ,在jsp 页面显示页面信息
解决方案 »
- struts2 如何获取表单数据
- Junit是hibernate里的东西吗?
- 新建的项目怎么发布?
- jakarta-tomcat-5.0.28 中文乱码
- HTML
- "空指针错误 java.lang.NullPointerException "
- 调用webservice时的Server.userException解决方法求助~~~在线等
- jsp中怎么写方法?
- 程序员的前途是什么?求过来人指点一二啊。。。
- EJB中的NextID的问题
- IO Connection reset !java.sql.SQLException: Already closed,可能是DBCP的问题。。
- loadrunner测试中的疑问
这个时候iuput属性就没用了。
对于异常在页面处理没接触过,不过从你给的配置中没有看到对抛出的UserNotFound异常的处理页面
test.jsp 页面
<html:messages id="msg" message="user.not.found">
<bean:write name="msg"/>
</html:messages>
<html:form method="post" action="login.do">
usrname: <html:text property="username"/> <br>
password: <html:password property="pwd"/> <br>
<html:submit value="sub"/>
</html:form>
<exception key="user.not.found" type="struts.UserNotFound"/>
拿key 值
if(!username.equals("admin")){
throw new UserNotFound();
}
抛出的了一个异常但是你哪里捕捉和处理了异常呢?