2

jax-ws commons Web サイトのチュートリアルを使用して、jax-ws と Spring で Web サービスを開発しました。Spring applicationContext ファイル ( https://jax-ws-commons.dev.java.net/spring/ ) からサービスを定義および参照する方法を示します。

Web サービスを参照するときの「#」の理由は何ですか? もっと似たようなものを見ると思います

<ws:service name="myEventWS" ref="eventWebService"/> 

しかし、上記のリンクの次の例では、機能する次のものを作成しました。

<bean id="eventWebService" class="com.myws.EventWS">
    <property name="model" ref="EventModel"/>
</bean>

<wss:binding url="/EventWS">
    <wss:service>
        <ws:service bean="#eventWebService"/>
    </wss:service>
</wss:binding>
4

3 に答える 3

2

<ws:service>これは、より単純な名前空間を使用して複雑な Bean グラフを表現できるようにする Spring の機能です。これらのカスタム名前空間の意味と解釈は、問題の実装 (この場合は JAX-WS-Commons プロジェクト) に依存します。それはbean=#eventWebServiceあなたが と呼んでいるものを意味すると決定したようですref="eventWebService"

なぜ彼らがそのようにしたのかわかりません。おそらく彼らはそれがより読みやすいと思ったのでしょう...おそらく彼らはbean=eventWebService(ハッシュなしで)参照ではなく名前を意味すると思ったのでしょう...わかりません。ドキュメントもあまり明確ではありません。

いずれにせよ、これは Spring のコア構文でも、以前に見た慣習でもないと確信しています。

于 2010-01-11T22:12:26.927 に答える
0

#eventWebServiceタイプの Bean を参照しEventWebServiceます (Bean が指定されていない場合のデフォルトの Spring 命名規則に従います)。

于 2010-02-01T10:04:06.090 に答える
0

「#」は、それがクラスではなく参照であることを Bean に伝えます。

HTH

于 2010-02-01T09:18:19.287 に答える