サーブレットスプリングサーブレットは使用できません(Spring + BlazeDS Integration)
-
05-07-2019 - |
質問
James Wardがrefcards.dzone.comに親切に投稿したrefcardを使用して、Spring + BlazeDS統合を使用してFlexプロジェクトをセットアップしようとしています。
いくつかの問題/課題が頭を突き出しています。 Tomcatの展開は順調に進んでおり、すべてのファイルはサーバー上にあり、ブラウザからmain.swfを呼び出すことができます。
Spring / BlazeDSにAMFリクエストを送信しようとすると、次のActionScript例外が発生します。
RPC Fault faultString ="送信に失敗しました" faultCode =" Client.Error.MessageSend" faultDetail =" Channel.Connect.Failed エラーNetConnection.Call.Failed:HTTP: 失敗:URL: ' http:// localhost:8080 / blazeds / spring / messagebroker / amf '&quot ;
" Failed:url:"を配置するときブラウザに直接URLを表示すると、Tomcatは次のエラーメッセージを表示します。
HTTPステータス404-サーブレットSpring MVC Dispatcher Servletは使用できません
James Wardがrefcardで指示したようなすべてのファイルをセットアップしました。application-config.xml、web.xml、services-config.xmlはすべて、見た限りの順序で並んでいます。
私が何を台無しにしているのかについてのアイデアはありますか?
PS:Jamesのrefcardと統合の安定リリースに関して、小さな変更に気づいています。 M2のリリース後に変更されたものがありますが、それが背後で私に噛みついているかもしれません
解決 3
私は自分の質問に答えるつもりです、それは結局私がダミーであることに帰着します。そこで、WEB-INF / libフォルダーに含まれていない.jarがいくつかあります。 blazeds + spring統合テストドライブからそれらをコピーして、問題を修正しました!
他のヒント
同じ問題があり、flex-spring統合のtest-drive-sampleからbackport-util-concurrent.jarとcfgatewayadapter.jarを追加することで修正しました。投稿のjosamotoに感謝します。
よろしく
参照カードをたどると、URLは http:// localhostになります。 8080 / dzone-server / spring / messagebroker / amf 。参照カードのcontext-rootはdzone-serverです。
重要なステップは、上記のURLがservices-config.xmlで定義されたエンドポイントURLと一致することを確認することです。したがって、上記のURLに一致するエンドポイントは次のようになります。
<endpoint url="http://{server.name}:{server.port}/{context.root}/spring/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/>
注:これは、エンドポイントURLに spring が追加されていることを除いて、Flex Builderで新しいflexプロジェクトを作成することによって追加されるデフォルトのほとんどです。