1

我试图从 OrbeonForms 版本 3.8 升级到 3.9。我使用PriorityResourceManagerFactory如下:

<context-param>
    <param-name>oxf.resources.factory</param-name>
    <param-value>org.orbeon.oxf.resources.PriorityResourceManagerFactory</param-value>
</context-param>
<!-- Uncomment this for the filesystem resource manager -->
<context-param>
    <param-name>oxf.resources.priority.1</param-name>
    <param-value>org.orbeon.oxf.resources.FilesystemResourceManagerFactory</param-value>
</context-param>
<context-param>
    <param-name>oxf.resources.priority.1.oxf.resources.filesystem.sandbox-directory</param-name>
    <param-value>d:/Sources/esb-repository/user-interface</param-value>
</context-param>
<context-param>
    <param-name>oxf.resources.priority.2</param-name>
    <param-value>org.orbeon.oxf.resources.WebAppResourceManagerFactory</param-value>
</context-param>
<context-param>
    <param-name>oxf.resources.priority.2.oxf.resources.webapp.rootdir</param-name>
    <param-value>/WEB-INF/resources</param-value>
</context-param>
<context-param>
    <param-name>oxf.resources.priority.3</param-name>
    <param-value>org.orbeon.oxf.resources.FilesystemResourceManagerFactory</param-value>
</context-param>
<context-param>
    <param-name>oxf.resources.priority.3</param-name>
    <param-value>org.orbeon.oxf.resources.ClassLoaderResourceManagerFactory</param-value>
</context-param>

我在 page-flow.xml 中有条目:

<files path-info=".+\.(gif|css|pdf|json|js|png|jpg|xsd|ico)"
    matcher="oxf:perl5-matcher"/>

在我的目录中,我保留了整个应用程序代码,并且我有文件theme/styles/layout.css。在 Orbeon 3.8 服务器路径/orbeon/theme/styles/layout.css完美运行,但不是在 3.9。

如何配置它以保持向后兼容性?

4

1 回答 1

0

我假设/orbeon是您部署 Orbeon Forms Web 应用程序的上下文。

  1. 如果你使用的是Orbeon Forms PE,3.9版本开始默认开启资源,浏览器请求的路径需要是,app版本/orbeon/3.14/theme/styles/layout.css在哪里。3.14如果您编写/theme/styles/layout.css代码,Orbeon Forms 会自动为您重写代码,并在发送给浏览器的 HTML 中添加版本号。

  2. 从 3.9 开始,在查找资源时会添加默认的应用路径/orbeon/3.14/theme/styles/layout.css因此,对具有版本化资源或不具有版本化资源的 的请求将在您的资源目录中/orbeon/theme/styles/layout.css查找该文件。app/theme/styles/layout.css所以你需要:

    • 将您的 CSS 移动到磁盘上的不同位置(移动themeapp目录下)。
    • 添加theme平台路径,方法是将其添加到oxf.url-rewriting.platform-paths属性中。这很可能是对您最有意义的选项。
于 2012-06-22T03:40:43.887 回答