使用通配符,只用一個通配符正常,使用兩個報500錯誤
配置的是2.5版本struts2,其余都根據慕友的建議修改了,可以正常運行,在通配符這,一個通配符可以正常運行,使用兩個的通配符就報錯。請問,這如何解決?
<?xml?version="1.0"?encoding="UTF-8"?>
<!DOCTYPE?struts?PUBLIC
????"-//Apache?Software?Foundation//DTD?Struts?Configuration?2.3//EN"
????"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
????<package?name="default"?namespace="/"?extends="struts-default"?strict-method-invocation="false">
????????
????????<action?name="*_*"?method="{2}"?class="com.imooc.action.{1}Action">
????????????<result>/result.jsp</result>
????????????<result?name="add">/{2}.jsp</result>
????????????<result?name="update">/{2}.jsp</result>
????????</action>
????
????</package>
????
????<constant?name="struts.enable.DynamicMethodInvocation"?value="false"></constant>
</struts>package?com.imooc.action;
import?com.opensymphony.xwork2.ActionSupport;
public?class?HelloWorldAction?extends?ActionSupport?{
????public?String?add()?{
????????return?"add";
????}
????
????public?String?update()?{
????????return?"update";
????}
????
????@Override
????public?String?execute()?throws?Exception?{
????????System.out.println("執行了Action");
????????return?SUCCESS;
????}
????
}
2017-08-10
自問自答,最后找到了問題,使用的是2.5版本,XML文件配置還是寫的2.3dtd,把兩個2.3改成2.5就可以了