使用通配符,只用一個通配符正常,使用兩個報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就可以了