【问题标题】:Changing default file structure in a Java Struts App在 Java Struts 应用程序中更改默认文件结构
【发布时间】:2008-08-30 00:19:14
【问题描述】:

我使用 Struts 已经有一段时间了,但是对于我正在完成的一个项目,我被要求将模板(velocity .vm 文件)、配置(struts.xml、persistence.xml)与主 WAR 文件分开。

我有所有的默认结构,如:

应用 |-- META-INF -- 一些配置在这里 |-- WEB-INF -- 其他在这里 | |-- 班级 | | |-- 元信息 | | `--我的包 | | `-- 类文件 | `--库 |-- css `-- tpl -- 要重定位的模板目录

而且我显然找不到关于如何设置(可能在 struts.xml 中)我的模板所在位置以及配置文件所在位置的文档。

我想我也必须在应用服务器上使用配置(我使用的是 Jetty 5.1.14)。

那么,关于如何配置它的任何提示?

谢谢


嗯,关于更改模板位置的全部内容是将模板放在设计人员可访问的区域,因此需要进行任何修改,设计人员可以将它们加载到他/她的计算机,编辑并再次上传。我认为这是一个常见的场景。所以,可能我在研究中遗漏了一些东西。也许我专注于将其配置在错误的地方......有什么想法吗?

【问题讨论】:

    标签: java templates struts configuration-files


    【解决方案1】:

    如果我正确理解了您关于 Struts 配置文件的问题,它们是在 web.xml 中指定的。找到 Struts servlet 配置参数。参数值可以是要加载的以逗号分隔的 XML 文件列表的列表。例如:

    <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>
                WEB-INF/config/struts-config.xml,
                WEB-INF/config/struts-config-stuff.xml,
                WEB-INF/config/struts-config-good.xml,
                WEB-INF/config/struts-config-bad.xml,
                WEB-INF/config/struts-config-ugly.xml
            </param-value>
        </init-param>
        ...
    </servlet>
    

    请参阅 5.3.2 下的 Struts guide。是的,这也适用于 2.x。

    【讨论】:

      【解决方案2】:

      对于 persistence.xml,具体来说,您可以将持久性单元放在单独的 JAR 中,您可以将其与 Web 应用程序 WAR 分开部署,或者将两者一起部署在 EAR 存档中,具体取决于什么您的应用程序服务器支持。例如,JBoss 手册将此描述为Deploy EAR with EJB3 JAR

      对于 struts-config.xml,如果您想使用非标准位置,我希望您将不得不覆盖加载它的 Struts 代码。

      我不知道 Velocity 模板。

      通常,出于安全原因,Web 应用程序仅从 WAR 中加载资源。您可以使用其他技术,但您可能会发现尝试weblets 会更容易,它似乎是一个旨在让您从单独的 JAR 加载资源的框架。

      【讨论】:

        【解决方案3】:

        您需要查看 WEB_INF 文件夹中的 velocity.properties 文件。恕我直言,您需要在此处更改 模板根目录,更改属性 file.resource.loader.path

        希望对你有帮助, 彼得

        【讨论】:

          猜你喜欢
          • 2013-01-06
          • 1970-01-01
          • 2013-07-17
          • 1970-01-01
          • 1970-01-01
          • 2012-05-04
          • 1970-01-01
          • 2017-06-21
          相关资源
          最近更新 更多