最近sev7n开始学习struts2
我只能说道路是艰辛的,struts的原理看起来还是比较好懂的,但是在实际开发是的时候真是困难啊
<package extends="struts-default" name="number" namespace="/test">
<action name="first" class="com.sev7en.FirstAction" >
<result name="success">first.jsp</result>
</action>
</package>
需要注意的是既然我们配置了命名空间test
就需要把我们的first.jsp放置在WEBROOT下的一个test文件夹下面
但是在<result name="success">first.jsp</result>中不需要再次把/test加入
这是最让我迷惑的地方了
下面贴出一下其他网友的经验吧
如果在struts.xml中设定某action的命名空间 namespace="/test",如:
<package name="mywork" extends="struts-default" namespace="/test">
如果在根目录的jsp文件(如 /login.jsp)中将s:form标签的指向某action的地址设为:
<s:form action="test/login.action">
则生成的相应页面代码为:
<form id="login" οnsubmit="return true;" action="test/login.action" method="post">
当多次执行这一页面时(如每次登陆验证都不通过),则浏览器url地址中的namespace将会重复出现,如:
http://localhost:8080/webAppName/test/test/test/test/login.action
而如果将s:form标签中的指向某action的地址设为:
<s:form action="/test/login.action">
生成的相应页面代码为:
<form id="login" οnsubmit="return true;" action="/webAppName/test/login.action" method="post">
此时多次执行这一页面url地址中的namespace也不会重复出现,浏览器url地址为
http://localhost:8080/webAppName/test/login.action
运行正常。