struts2的namespace配置错误,数据校检器的使用???

qq_35410625 2017-05-07 05:49:11
警告: Could not find action or result
There is no Action mapped for namespace /admin and action name AddManager. - [unknown location]
at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:189)
at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:475)
at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Struts_admin:代码:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="admin" namespace="/" extends="struts-default">
<action name="AddManager" class="com.action_admin.Manager_Action" method="add">
<result name="success">admin/index.jsp</result>
</action>


</package>


</struts>
addManager.jsp页面代码:
<form name="form1" action="AddManager" method="post" onsubmit="return fun_check_form()">
<table cellspacing="1" cellpadding="4" width="100%"
class="tableborder" id="table3">

<input type="hidden" name="action" value="save" />
<tr>
<td colspan="12" class="header">
管理员-添加
</td>
</tr>
<tr>
<td class="altbg1">
管理员名称:<s:fielderror cssStyle='color:red'>
<s:param>manager.managerName</s:param>
</s:fielderror>
</td>
<td class="altbg2" colspan="11">
<input type="text" name="manager.managerName" size="34" onblur="f_check(this.value)"><span id = "i_s"></span>
</td>
</tr>
<tr>
<td class="altbg1">
密  码:<s:fielderror cssStyle='color:red'>
<s:param>manager.managerPwd</s:param>
</s:fielderror>
</td>
<td class="altbg2" colspan="11">
<input type="password" name="manager.managerPwd" size="34">
</td>
</tr>
<tr>
<td class="altbg1">
确认密码:<s:fielderror cssStyle='color:red'>
<s:param>repwd</s:param>
</s:fielderror>
</td>
<td class="altbg2" colspan="11">
<input name="repwd" size="34" type="password">
</td>
</tr>


<tr>
<td class="altbg1">
<br></td>
<td class="altbg2" colspan="11">
<input type="submit" value="提交" name="B1"/>
 
<input type="reset" value="重置" name="B2">
</td>
</tr>

</table>
</form>



Manager_Action_validation.xml代码:
<validators>
<field name="manager.managerName">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>管理员名称不能为空</message>
</field-validator>
<field-validator type="stringlength">
<param name="maxLength">12</param>
<param name="minLength">6</param>
<message>管理员名称长度必须在6——12之间</message>
</field-validator>
</field>
<field name="manager.managerPwd">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>密码不为空</message>
</field-validator>
<field-validator type="stringlength">
<param name="minLength">6</param>
<message>密码长度必须大于或等于%{minLength}</message>
</field-validator>
</field>
<field name="repwd">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>确认密码不为空</message>
</field-validator>
<field-validator type="fieldexpression">
<param name="expression">manager.managerPwd=repwd</param>
<message>密码和确认密码必须相同</message>
</field-validator>

</field>



</validators>


Manager_Action对应代码:
Manager manager=new Manager();

public Manager getManager() {
return manager;
}

public void setManager(Manager manager) {
this.manager = manager;
}

public String add(){
ManagerDaoImpl managerDao=new ManagerDaoImpl();
boolean flag=false;
flag=managerDao.add(manager);
if(flag){
HttpServletRequest request=ServletActionContext.getRequest();
HttpSession session=request.getSession();
session.setAttribute("ManagerExist", "管理员已经存在");

}
return "success";
}
问题一:异常问题为什么会出现这个异常?如何解决?
问题二:struts2的数据校检器,怎样在前端输出?为什么我这个方式输出不了错误提示?
...全文
368 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧