6

WebSphereでURLリソースをセットアップする必要があり、このチュートリアルに従っています。ただし、このチュートリアルでは、WebSphereStudioを使用してWebSphereのweb.xmlおよびibm-web-bnd.xmlを変更する必要があります。WebSphere Studioを持っていないので、テキストエディターを使用してこれらのファイルを手動で変更する必要があります。2つのファイルを「検索」しようとしましたが、「検索結果」が多すぎて、どちらが正しいファイルかわかりません。

2つのファイルはどこにありますか?resource-refまた、 's idにどのような値を設定する必要がありますか?WebSphere Studioには'を設定するためのテキストフィールドがありませんがresource-ref、コードビューに値があります。

ありがとうございました!

4

1 に答える 1

17

web.xmlは標準のJavaEEファイルであり、その構造はサーブレット仕様で十分に文書化されています。でweb.xml、ローカルJNDI名前空間(java:comp/env)内で既知のURLを宣言します。

web.xmlWEB-INFWARプロジェクト構造の下の内部に配置する必要があります。IDE(Eclipseなど)を使用してWebプロジェクトを作成している場合、このファイルはすでに作成されているはずです(サーブレット仕様2.5以降を使用している場合を除きます-サーブレット仕様2.5はJavaEE 5.0に含まれています-デプロイメント記述子はオプションです)。

ibm-web-bnd.xmlWebSphere固有のファイルです。これには、宣言されたアーティファクト(URL定義など)の実際のアーティファクトへのバインドが含まれています。そのファイルのフォーマットを理解するには、IBMの資料を参照する必要があります。

ファイルはibm-web-bnd.xml、と同じディレクトリに配置する必要がありますweb.xml

id属性は、内resource-refの一致する属性によって相互参照されている限り、任意の値に設定できます。これが、WebSphereがの定義をの定義に関連付ける方法です。チュートリアルに表示されるランダムな文字列は、RADまたはWSADによって作成されます。そこに任意の識別子を配置できます。idibm-web-bnd.xmlibm-web-bnd.xmlweb.xml

編集(追加された指示)

一言で言えば、プロセスはこれです:

  1. で、ローカルJNDI名web.xmlを定義します。これは、JavaコードがURLを参照している名前になります。たとえば、。コードはでJNDIルックアップを実行する必要があります。定義はこれらの線に沿っています:myWebsiteUrljava:comp/env/myWebsiteUrl

    <resource-env-ref>
        <resource-env-ref-name>myWebsiteUrl</resource-env-ref-name>
        <resource-env-ref-type>java.net.URL</resource-env-ref-type>
    </resource-env-ref>
    
  2. WebSphere自体で、URL定義を追加します。重要なのは、URLがわかるWebSphereのJNDIツリーにあるJNDI名です。ここでは任意の値を設定できますが、(慣例により)接頭辞として。を付けることをお勧めしますurl/。例:url/test

  3. では、 (アプリケーションによってルックアップされた)を(WebSphereがURLを認識するためのJNDI名)ibm-web-bnd.xmlにバインドする必要があります。定義は次のようになります。myWebsiteUrlurl/test

    <resource-env-ref name="myWebsiteUrl" binding-name="url/test"/>
    

手順3は必要ありません。ibm-web-bnd.xmlデプロイメント時に存在しない場合は、GUIベースのデプロイメントフロー(WAS管理コンソールを介してアプリケーションをデプロイするときに使用)により、バインディング値の入力を求められます。(スクリプトを使用してデプロイしている場合はibm-web-bnd.xml、バインディングを別の方法で指定する限り、ファイルを省略できますが、それはこの回答の範囲を超えています。戦略ファイルに関するIBMの資料を読んでください。 AdminApp.installApplication

注:JavaEE 5.0以降を使用している限りid、定義に属性は必要ありません。ちなみに、あなたが読んでいる記事は非常に古くなっています。

于 2012-12-06T07:27:24.670 に答える