0

私は、HTTPSを介して外部Webサービス(完全に分離されており、会社とは関係ありません)と通信しているSpringsourceツールキット(つまり、@ Service属性)を使用してJavaで記述されたクライアントを持っています。marshalSendAndReceiveステップで例外が発生します。これは、content-typeが予期されたtext/xmlではなくtext/htmlとして返されることを示し、「これはエラーメッセージである可能性がありますか?」というメッセージが表示されます。

Webサービス自体は、サービスの次のバージョンの公開テストであり、同じコードからライブサービスを呼び出すことは正常に機能します。私が呼び出しているこの特定のメソッドは、ライブシステムでは正常に機能しますが、テストシステムでは機能しません。

私の勘は、リクエストがテストシステム用に正しくフォーマットされていないことです-リリースノートに従ってスキーマで応答のみが変更されているはずですが-これにより、サービスはクライアントによって誤って解析されたエラーを返します。(リリースノートによると)変更されていないリクエストも含め、すべてのリクエストでこのエラーが発生します。

FiddlerとWiresharkを使用してトラフィックを検査しようとしましたが、Fiddlerにトラフィックをまったく表示させることができず(これは、プロキシを備えたSTSでTomcatを使用する際の問題であると思われます)、WiresharkはHTTPSのものをデコードできません(Iキーがありません)。外部サービスが403Forbiddenを返すため、HTTPを使用できません。

私は元々の開発者ではなく、Java開発者でもありません。私は経験豊富な.NET開発者なので、それとの類似点は理解されます-そうでなければ、私はダミーであり、それに応じてあなたの指示/質問/可能な助けを言います。前任者の指示に従って、XmlBeansを使用してWSDLからJARファイルを作成し、それを参照ライブラリとして追加しましたが、それが正しく行われたかどうか、またはそれが何を行っているかさえわかりません。それは物事に認識できる影響を与えていないようです。

この問題をデバッグし、クライアントまたはそのサービスに問題があるかどうかを確認するにはどうすればよいですか?

4

1 に答える 1

0

私の最初の目標は、Fiddlerを機能させることです。暗闇の中でデバッグするのは難しいです。ただし、私が混乱するのは、STSのTomcatで実行されているクライアントについて話し合うときです。あなたのクライアントはウェブアプリですか?

SoapUIなどの他のツールを試して、サービスが期待どおりにリクエストに応答していることを検証しましたか?

于 2012-09-19T16:11:59.547 に答える