2012-02-21 57 views
-2

我們有一個應用程序正在使用OBIEE Web服務來獲取數據。我們的應用程序開發團隊位於兩個不同的地點,即SanJose(CA)和Bangalore(Ind)。 當我們在SanJose建立當地環境時,一切都很好,沒有任何問題。從不同位置訪問同一個OBIEE webservice時出現超時錯誤

但是,當我們嘗試在班加羅爾設置本地開發環境時,我們正在獲取讀取超時異常。我們認爲這可能是一個防火牆限制問題,但沒有這樣的限制(與網絡團隊確認)

我們使用的是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) 

回答

1

「讀取超時」是指該客戶端連接到遠程服務器,併發送所述請求。但是,客戶端在超時過期之前沒有收到服務器的響應。 Axis2客戶端使用30秒的默認超時,但可以更改超時。

運行Web服務的人應該能夠判斷他們是否可以看到客戶端連接以及服務響應客戶端請求需要多長時間。如果Web服務響應緩慢,那麼也許您只需要增加客戶端超時。或者,如果服務正在及時響應請求,那麼我會尋找類似防火牆阻止返回流量的東西。快速測試可能是通過Web瀏覽器訪問Web服務URL,或者向服務發送故意錯誤的請求,然後查看是否返回錯誤。

相關問題