一般说form表单的action属性中,是不用加.action的,而且我用的是struts2的标签
但是我中间出现了 问题
其中我struts.xml的相关配置如下: <package name="test" extends="struts-default">
<action name="register_*" method="{1}" class="com.cfd.action.RegisterAction">
<result name="register">/register.jsp</result>
<result name="input">/register.jsp</result>
<result name="success">/result.jsp</result>
</action>
</package>
我原来还加了一个namespace="\"
但是我页面的form提交时候说找不到 为什么呢??
下面这种方式是404错误:<s:form action="/register_submit" theme="simple">但是我在后面加上.action后就没有问题了:
<s:form action="/register_submit.action" theme="simple">或者是我把前面的正斜杠去了也行:
<s:form action="register_submit" theme="simple">请问一下。。这是为什么啊?
struts2的标签不是要自动加上.action啊
为什么会出现这种问题 而且还和斜线有关系啊??
谢谢各位啦
但是我中间出现了 问题
其中我struts.xml的相关配置如下: <package name="test" extends="struts-default">
<action name="register_*" method="{1}" class="com.cfd.action.RegisterAction">
<result name="register">/register.jsp</result>
<result name="input">/register.jsp</result>
<result name="success">/result.jsp</result>
</action>
</package>
我原来还加了一个namespace="\"
但是我页面的form提交时候说找不到 为什么呢??
下面这种方式是404错误:<s:form action="/register_submit" theme="simple">但是我在后面加上.action后就没有问题了:
<s:form action="/register_submit.action" theme="simple">或者是我把前面的正斜杠去了也行:
<s:form action="register_submit" theme="simple">请问一下。。这是为什么啊?
struts2的标签不是要自动加上.action啊
为什么会出现这种问题 而且还和斜线有关系啊??
谢谢各位啦
?这个是相对路径与绝对路径的问题
namespace不配置的时候就是表示的是默认的命名空间,这个时候是相当于namespace=""
就是为空。
那这个默认的表示的是什么呢?
在所有的package中,只要没有配置namespace,那package中的action就会被放在默认的命名空间里去。
是不是其他问题 就是命名空间的问题
如果你配置了命名空间,那么在提交的时候,struts2不会帮你手动的加上action了
所以如果你配置了namespace,则要加上.action
而正如楼上说的 不加/ 就表示的是相对路径了
顶.权威的:http://struts.apache.org/2.x/docs/namespace-configuration.html
不管是不是通配符的方式