0

我需要使用 Blackboard Web Services,但我不知道如何通过 SOAP 建立连接。我需要像安全标题这样的东西。我读了很多书,但是当我尝试连接时,总是会出现这种错误。

我对这个例外有一点大问题。对我来说没有什么是清楚的。我在应用程序日志中什么都没有。我猜不出应该是什么问题。我还阅读了有关 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 与 Blackboard Web 服务连接,但我无法发送正确的安全标头

我阅读了很多关于它的内容,最后我找到了这篇文章。我正在使用这个人在 pdf 中发布的项目。我有一个 Blackboard 实例在 localhost 的 9876 端口上工作。我可以用它做任何我想做的事情。它完全有效。

我还尝试使用 SOAPui,但遇到了另一个错误:

WSDoAllReceiver: security processing failed (actions mismatch)

我不想阅读更多,我阅读了 150 多篇关于它的文章,但什么也没有。谢谢 :)

4

1 回答 1

0

我刚刚开始使用 Blackboard Web 服务,目前我只是使用 SOAPui 访问。我能够连接和发送各种功能,一路上我通过 SOAPui 遇到了和你一样的错误,所以我找到了你的问题。我通过执行以下操作克服了这个错误:

  1. 使用 ContextWS.initialize 创建会话,用户名应为“session”,密码应为“nosession”。如果成功,这应该返回一个令牌字符串。
  2. 使用 ContextWS.login 登录。标头中的用户名应该是“会话”,密码应该是 1 中返回的令牌。正文中的用户 ID 和密码应该是具有足够 Web 服务权限的用户的用户名和密码。如果成功,这应该返回“真”。
  3. 调用你想要的任何 WS 函数。始终在标头中发送“会话”和令牌用户名和密码。

我在这里找到了这个: https ://community.blackboard.com/docs/DOC-1116

我还发现https://community.blackboard.com/thread/2147和链接的 youtube 视频有助于了解如何使用 SOAPui 正确发送数据 - 您可能需要将 wsdl url 更改为 https,因为 SOAPui 会将其恢复为标准http。您还需要为每次通话添加时间戳。

于 2016-10-17T16:26:49.783 回答