我目前的项目结构如下
WebContent
WEB-INF
View
TestPage.jsp
other JSP pages...我的任务是将所有JSP页面放在文件夹WEB中,并在项目中进行所有相关更改。
WebContent
WEB-INF
View
TestPage.jsp
other JSP pages...所以我必须更新struts.xml中的所有结果标记
<result name="success">/View/TestPage.jsp</result>至
<result name="success">/WEB_INF/View/TestPage.jsp</result>在网上搜索之后,我找到了一个插件- struts约定插件来实现这一点,但是它遵循了它的命名规则。
我可以覆盖Struts约定插件配置(这不会遵循它的命名约定)吗?我也尝试过了,但它没有反映。我的struts.xml是
<struts>
<constant name="struts.devMoade" value="true" />
<constant name="struts.convention.result.path" value="/WEB-INF/View/" />
<package name="test" extends="struts-default" namespace="/">
<action name="hello1" class="testAction.Hello1Action">
<result name="success">/TestPage.jsp</result>
</action>
</package>
</struts>当我跑的时候
localhost:8080/project-name/hello1它显示错误404,但如果我将struts.xml中的结果更改为
<result name="success">/WEB-INF/View/TestPage.jsp</result>效果很好。
我不想在所有的结果中做改变,tags.How,我能通过在一个地方做改变来实现这一点吗?
发布于 2015-02-07 10:51:18
约定插件使用不同的配置提供程序,这个常量只适用于由约定创建的配置。
<constant name="struts.convention.result.path" value="/WEB-INF/View/" />如果要重写约定配置,则应使用注释。
package testAction;
@ParentPackage("json-default")
@Namespace("/")
@Action(value="hello1", results=@Result(name = "success", location="TestPage.jsp"))
public class Hello1Action extends ActionSupport {
}https://stackoverflow.com/questions/28363971
复制相似问题