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 以降のバージョン管理されたリソースはデフォルトで有効になっています。ブラウザが要求するパスは である必要があります/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 をディスク上の別の場所に移動します (ディレクトリthemeの下に移動しますapp)。
    • プロパティに追加themeして、プラットフォーム パスとして追加します。ほとんどの場合、これが最も理にかなったオプションです。oxf.url-rewriting.platform-paths
于 2012-06-22T03:40:43.887 に答える