2017-04-04 79 views
-2

Struts的问题报告没有动作映射的动作名称elecMenuAction_menuHome

的Struts已经检测到一个未处理的异常:

消息:
没有映射的动作名称elecMenuAction_menuHome行动。

踪迹

没有映射的动作名称elecMenuAction_menuHome行动。 - [未知位置]

com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185) org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63) org.apache.struts2 .impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39) com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:500) org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:218) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)

。 ..

struts.xml

<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 
    "http://struts.apache.org/dtds/struts-2.3.dtd"> 
<struts> 
    <!-- dev model --> 
    <constant name="struts.devMode" value="true"></constant> 
    <!-- ui --> 
    <constant name="struts.ui.theme" value="simple"></constant> 
    <!-- .do--> 
    <constant name="struts.action.extension" value="do"></constant> 

    <!-- system management --> 
    <package name="system" namespace="/system" extends="struts-default"> 
     <!-- test --> 
     <action name="elecTextAction_*" class="elecTextAction" method="{1}"> 
      <result name="save">/system/textAdd.jsp</result> 
     </action> 

     <action name="elecMenuAction_*" class="elecMenuAction" method="{1}"> 
      <result name="menuHome">/WEB-INF/page/menu/home.jsp</result> 
     </action> // I add this action then report error. 
    </package> 
</struts> 

在我ElecMenuAction.java

@SuppressWarnings("serial") 
@Controller("elecMenuAction") 
@Scope(value = "prototype") 
public class ElecMenuAction extends BaseAction<MenuForm> { 

    MenuForm menuForm = this.getModel(); 

    public String menuHome(MenuForm menuForm) { 

     return "menuHome"; 
    } 

} 

在我menu/index.jsp

<form action="${pageContext.request.contextPath}/menu/elecMenuAction_menuHome.do" method="post" target="_top"> 

我的目录低于:

+0

你有没有尝试调整映射设置没有特殊字符'*' –

+0

@ShivamAggarwal我测试,但没用。 –

回答

0

我看到你的包配置在struts.xml是这样的:

<package name="system" namespace="/system" extends="struts-default"> 

但你的表单操作是这样的下面,为什么menusystem

<form action="${pageContext.request.contextPath}/menu/elecMenuAction_menuHome.do" method="post" target="_top"> 

,则应该更换action到:

action="${pageContext.request.contextPath}/system/elecMenuAction_menuHome.do" 

这就是为什么映射操作无法找到原因。

相关问题