2016-03-08 32 views
0

我需要使用Blackboard Web服務,並且我不知道如何通過SOAP建立連接。我需要安全標題之類的東西。我讀了很多,但是當我嘗試連接時,我總是遇到這種錯誤。通過SOAP使用AXIS2的黑板Java Web服務錯誤 - 安全標頭

我有這個例外有點大問題。沒有什麼是我清楚的。我在應用程序日誌中沒有任何內容。我無法猜測應該是什麼問題。我也看了有關Axis2的,時間戳...

2016-03-08 20:53:58,739 ERROR edu.ku.it.si.registerproxytool.controller.RegisterToolController.registerProxyToolWithBlackboard:84 - There was an error in registering the tool: WSDoAllReceiver: Incoming message does not contain required Security header 

Process finished with exit code 0 

我期待通過SOAP與黑板的Web服務連接,而我不能發送正確安全首

我讀了很多關於它,最後我發現了this article。我正在使用這個人發佈在pdf中的項目。我有一個Blackboard實例在端口9876上的本地主機上工作。我可以用它做任何我想做的事情。它充分運作。

我還試圖用SOAPUI,我達到了一個不同的錯誤:

WSDoAllReceiver: security processing failed (actions mismatch) 

我並不想了解更多,我讀到它150餘篇,並沒有什麼。 謝謝:)

+0

http://www.brucephillips.name/blackboard/registerproxytool.zip這裏是代碼 – radacina

回答

0

我剛剛開始使用Blackboard Web服務,目前我只是使用SOAPui訪問。 我能夠連接併發送各種功能,沿着我通過SOAPui遇到同樣錯誤的方式,因此我發現了您的問題。 我通過執行以下操作克服了這個錯誤:

  1. 創建使用ContextWS.initialize會話,用戶名應該是「會話」和密碼「nosession」。如果成功,這應該返回一個令牌字符串。
  2. 使用ContextWS.login登錄。標題中的用戶名應該是'session',密碼應該是1中返回的標記。正文中的用戶標識和密碼應該是具有足夠Web服務權限的用戶。如果成功,這應該返回'真'。
  3. 調用您希望的WS功能。始終在標題中發送'會話'和令牌用戶名和密碼。

我發現這個在這裏: https://community.blackboard.com/docs/DOC-1116

我還發現https://community.blackboard.com/thread/2147和鏈接的YouTube視頻有助於瞭解如何將數據正確發送使用SOAPUI - 你可能需要將WSDL URL更改爲https如SOAPUI將其還原爲標準的http。您還需要爲每個呼叫添加一個時間戳。