1

WebLogic JWSC ant タスクを使用して、既存の wsdl から WebLogic Web サービス アーティファクトを生成しています。JWSC は必要なすべてのファイルを生成し、それらを ear ファイルにアーカイブします。

JWSC タスクに新しい application.xml を作成させたくないので、JWSC タスクの applicationXml 属性を使用して、既存の application.xml の場所を指定します。<module>次に、JWSC タスクは新しいタグを正常に追加して application.xml を更新します。モジュールタグの中にタグがあります<web-uri>web-uriWAR ファイルの場所を定義します。ここまでは順調ですね。

分解属性を true に設定すると、タスクは ear ファイルを作成せず、必要なすべてのファイルをディレクトリ内に置きます。JWSC タスクも指定された application.xml を更新しますが、今回は web-uri タグに exloded ディレクトリの名前を .war 拡張子なしで付けますが、ここに war 以外のファイル名を入れるのは間違っています。

正しい形式はそのようにする必要があります

<module>
  <web>
    <web-uri>petStore.war</web-uri>
    <context-root>store</context-root>
  </web>
</module>

状況に気付いていない場合、WebLogic は指定された war ファイル (.war 拡張子なし) を見つけられません。

JWSC が間違った web-uri で application.xml を更新する理由を知っている人はいますか?

4

1 に答える 1

2

application.xml をどこかに置くことができます。app.xml を作成するときに、property appxml = "${path-original-application.xml}"以下にスニペットを示します。

<target name="dist-ear" depends="clean-build-webservices">
    <delete file="${build.dir}/META-INF/application.xml"/>
    <copy todir="${build.dir}/META-INF"  overwrite="true">
        <fileset dir="${webservices.resource.dir}">
            <include name="weblogic-application.xml"/>
        </fileset>
    </copy>
    <ear destfile="${dist.dir}/${webservice.name}.ear" appxml="${viwebservices.appxml.location}">
        <fileset dir="${build.dir}" includes="*.war"/>
        <zipfileset dir="${webservices.src.dir}/jdbc" prefix="jdbc"/>
        <metainf dir="${build.dir}/META-INF"/>
    </ear>
</target>
于 2014-01-31T15:07:06.307 に答える