【问题标题】:Struts 1 action forward from struts-config calling to another action from another struts-config fileStruts 1 动作从 struts-config 向前调用到另一个 struts-config 文件中的另一个动作
【发布时间】:2013-01-30 15:11:34
【问题描述】:

我正在尝试从 struts-config 调用 struts 1 中的 action forward 属性,并且我想调用另一个操作,它位于另一个 struts.config 文件中。显然它不起作用!

我的代码是:

In "struts-misExpedientes.xml" 
<action path="/s99bIrInicio" forward="$$$WEBROOT_ENVIRONMENT$$$/comunJSP/s99binicio.do">

the other xml file is "struts-comun.xml"
<action path="/s99binicio" forward="/s99bIrWelcomeMensajeDia.do" />

注意事项: "WEBROOT_ENVIRONMENT" 是我在属性文件中声明的变量,其值为 [http://localhost:8100/s99bEnvironmentWar]

感谢您提供的任何想法。

【问题讨论】:

    标签: struts-1 forward struts-config struts-action


    【解决方案1】:

    如果您的意思是要从一个 webapp 转发到另一个 webapp,那么这是不可能的。每个 webapp 都与其他 webapp 隔离。每个都有自己的 awn 类、库和会话,与另一个不同。所以将 HttpRequest 对象从一个传递到另一个是没有意义的。

    您可能应该重定向到另一个 web 应用程序。顺便说一句,Struts 不鼓励动作链接,即使在可能的情况下,在单个 wepapp 中也是如此。

    编辑:看来您正在使用模块。所以按照the documentation 所说的去做:

    从一个模块切换到另一个模块有三种方法。

    • 您可以使用 Extras JAR 中的 org.apache.struts.actions.SwitchAction,
    • 您可以使用&lt;forward&gt;(全局或本地)并将 contextRelative 属性指定为 true,
    • 或者您可以将“module”参数指定为任何 Struts JSP 超链接标签(包括、Img、Link、Rewrite 或 Forward)的一部分。

    【讨论】:

    • 您好 JB,两者都在同一个 webApp 中。具体在同一个WAR模块中。
    • 在不同的struts-config中写入,因为每个模块中有很多条目。
    • 查看我编辑的答案。但是转发到另一个动作,尤其是在一个单独的模块中,仍然是糟糕的设计。您应该改为重定向。
    • 谢谢!我将尝试阅读文档中有关模块的内容。
    猜你喜欢
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多