0

これが私の環境の簡単な背景です。

以下に示すように MANIFEST.MF を作成することにより、myapp WAR を OSGi 準拠に変換しようとしています。この戦争を OSGi ベースのコンテナーである ServiceMix にデプロイしたいと考えていました。

マニフェスト.MF

Manifest-Version: 2.0
Bundle-SymbolicName: myapp
Bundle-Version: 2.1.dev
Bundle-Name: Jetty.myapp
Bundle-Vendor: ABC
Created-By: 1.6.0_25-b06 (Sun Microsystems Inc.)
Bundle-ClassPath: .,WEB-INF/lib, WEB-INF/classes, xforms/xsltforms
Web-ContextPath: myapp
Webapp-Context: myapp
Import-Package: javax.servlet
Built-By: root
Project-Name: ABC_PRJ
Project-Version: 2.1.dev
Project-Build: ${DSTAMP}
SVN-Revision: ${svn.revision}

ContextPath が null に設定されています。contextPath をどこでどのように設定すればよいですか? FileNotFound 例外で「null」文字列が確認される場合があります。

ログ:

java.io.FileNotFoundException: null/WEB-INF/myForms-config.xml (No such file or
        directory)

myapp の私の web.xml は次のとおりです。

<contextPath>/</contextPath>
<context-param>
      <param-name>myForms.configfile</param-name>
      <param-value>WEB-INF/myForms-config.xml</param-value>
</context-param>

myapp、jetty、または serviceMix に問題がありますか? どんな手掛かり?

4

1 に答える 1

0

詳細については、Web.xmlではなくマニフェストを介してweb-contextpathを設定する必要があります。詳細については、Pax-Webを参照してください。

于 2012-10-02T07:15:58.243 に答える