struts2 中关于url配置的问题


在xml配置里面是这样写的:

   
  <package name="admin" extends="AdminLevelIntercepter">
  
<!-- 后台登陆 -->
<action name="login" class="cc.sqzr.blog.action.AdminAction" method="login">
<result name="success">/ADMIN/login.jsp</result>
<interceptor-ref name="defaultStack"/>
</action>

<!-- 后台验证 -->
<action name="check" class="cc.sqzr.blog.action.AdminAction" method="check">
<result name="success" type="redirect">/admin/main</result>
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="token" />
</action>

<!-- 后台主界面 -->
<action name="main" class="cc.sqzr.blog.action.AdminAction" method="main">
<result name="success">/ADMIN/main.jsp</result>
<result name="error">/ADMIN/error.jsp</result>
</action>

</package>

但是当我访问的时候:

http://127.0.0.1:8081/admin/login
http://127.0.0.1:8081/login

这两个链接都能访问到 后台登陆... 是我配置错误,还是怎么的..不想让 /login 访问到,而是必须通过/admin/login..

<result name="success" type="redirect">/admin/main</result>

还有这里,不知道有没有其他更好的办法进行跳转..大家登陆成功后一般都是怎么进行跳转的

struts2 java

芙蘭朵露EX 10 years, 4 months ago

你好,首先你要查看下你的web.xml中的初始化配置是否就是login.jsp
然后可以配置拦截器,去过滤/login

脆皮豆腐00 answered 10 years, 4 months ago

按你的意思可以这么配置用struts2默认的包配置:
<package name="default" extends="struts-default">
然后,把action改成你想要的访问
<!-- 后台登陆 -->
<action name="admin/login" class="cc.sqzr.blog.action.AdminAction" method="login">
<result name="success">/ADMIN/login.jsp</result>
<interceptor-ref name="defaultStack"/>
</action>

春哥我媳妇 answered 10 years, 4 months ago

Your Answer