-2

データを取得するために OBIEE Web サービスを使用するアプリケーションがあります。当社のアプリケーション開発チームは、サンノゼ (CA) とバンガロール (インド) の 2 つの異なる場所に配置されています。SanJose でローカル環境をセットアップすると、すべて正常に動作し、まったく問題はありません。

しかし、バンガロールでローカル開発環境をセットアップしようとすると、読み取りタイムアウト例外が発生します。これはファイアウォールの制限の問題ではないかと考えましたが、そのような制限はありません (ネットワーク チームに確認済み)。

Tomcat6.0 と java6 を使用しています。締め切りに間に合わせるために、この問題を修正することが非常に急務です。これをフォローして修正できる方法を教えてください。

例外スタック トレースは次のとおりです。

[INFO] Unable to sendViaPost to url[http://<SOME-OBIEE-SERVER>/analytics/saw.dll?SoapImpl=webCatalogService]
java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(Unknown Source)
    at java.io.BufferedInputStream.fill(Unknown Source)
    at java.io.BufferedInputStream.read(Unknown Source)
    at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
    at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
4

1 に答える 1

1

「読み取りタイムアウト」は、クライアントがリモート サーバーに接続し、要求を送信したことを意味します。しかし、クライアントはタイムアウトになる前にサーバーからの応答を受け取りませんでした。Axis2 クライアントはデフォルトの 30 秒のタイムアウトを使用しますが、タイムアウトは変更できます。

Web サービスを実行している人は、クライアントが接続していることを確認できるかどうか、およびサービスがクライアントの要求に応答するのにかかる時間がわかる必要があります。Web サービスの応答が遅い場合は、クライアントのタイムアウトを増やす必要があるかもしれません。あるいは、サービスが要求に迅速に応答している場合は、リターン トラフィックをブロックするファイアウォールのようなものを探します。簡単なテストとして、Web ブラウザーを介して Web サービスの URL にアクセスするか、意図的に不適切な要求をサービスに送信して、エラーが返されるかどうかを確認します。

于 2012-02-21T21:30:02.710 に答える