首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

struts2.3 动态方法调用报错的有关问题

2013-09-29 
struts2.3 动态方法调用报错的问题struts.xml:strutspackage namedefault extendsstruts-default

struts2.3 动态方法调用报错的问题
struts.xml:


<struts>
    <package name="default" extends="struts-default">
    <action name="login" class="com.wjf.action.LoginAction"> 
<result name="success">/showmsg.jsp</result>
</action>
</package>
</struts>


LoginAction.java

public class LoginAction implements Action{

private String msg;

public String getMsg() {
return msg;
}

public String execute() throws Exception {
msg = "execute";
return SUCCESS;
}

public String addUI(){
msg = "addUI";
return SUCCESS;
}
}


地址栏访问http://192.168.1.102:8080/struts2/login!addUI.action,为什么报错?


java.lang.NullPointerException
org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
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:553)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434)



[解决办法]
一旦你使覆盖了execute方法,其他的方法是不会调用的,不要覆盖这个方法,自己定义方法,这样就可以使用http://192.168.1.102:8080/struts2/login!xxxxx.action调用action中指定的方法。

热点排行