当前位置: 首页 > 知识库问答 >
问题:

通过AzureJavaSDK向服务总线主题发送消息时发生500个内部服务器错误

江永安
2023-03-14

我在尝试通过java azure sdk向服务总线主题发送消息时遇到问题,我收到500个内部服务器错误。

我根据这个链接编写了代码:https://azure.microsoft.com/en-us/documentation/articles/service-bus-java-how-to-use-topics-subscriptions/我的代码如下所示:

Configuration config = ServiceBusConfiguration.configureWithSASAuthentication(
    "NAMESPACE",
    "SAS_NAME",
    "SAS_KEY_VALUE",
    ".servicebus.windows.net");      
ServiceBusContract service = ServiceBusService.create(config);
try {
    BrokeredMessage message = new BrokeredMessage("Message content");
    service.sendTopicMessage("TOPIC_NAME", message);
} catch (ServiceException e) {
    e.printStackTrace();
}

我可以用相同的配置值发送消息。NET代码。

这里是我收到的例外:“com.sun.jersey.api.client.UniformInterfaceException:POSThttps://NAMESPACE.servicebus.windows.net/TOPIC_NAME/messages?api-version=2013-07返回的响应状态为“500内部服务器错误”

我还有一个关于api版本的问题。为什么库会在请求中放入这么旧的api版本?我使用maven repository中最新版本的azure sdk:

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>azure-servicebus</artifactId>
    <version>0.9.3</version>
</dependency>

共有2个答案

郝永思
2023-03-14

我终于找到了问题的原因。真正的错误是“找不到MessageId为..的邮件的匹配订阅”。如果在主题配置中选中“发布前过滤消息”选项,并且不存在匹配的订阅,则会发生此错误。

问题是,对Azure Java SDK使用的Azure REST API的调用,而不是关于找不到匹配订阅的信息,只返回500个内部服务器错误。。只有来自Azure的电话。NET SDK返回一个带有有用注释的异常。

姬经义
2023-03-14

我试图复制您的问题,但没有得到任何错误信息。

根据REST应用编程接口“发送消息”,500状态代码意味着不是由客户端源代码引起的内部错误。

所以我认为你可以尝试再次运行代码。

如果您仍然遇到相同的错误或其他错误,您是否可以分享更多信息来帮助分析问题?

如有任何问题,请随时通知我。

 类似资料:
  • 使用Azure Service Bus-Topics,我想实现一个解决方案,其中一旦生产者将消息发送到Topic,消息就会被发送/通知给最终消费者(比如队列)。 我理解主题作为pub/sub模型工作,其中订阅者需要从订阅中读取消息。但是我正在寻找一种类似队列的工作方法(当接收到任何消息时,它会触发web作业/服务)。 首先,我想知道服务巴士的主题是否是正确的选择?接下来,如果可能的话,实现一个变通

  • 我正在构建Windows Phone应用程序,无法使用Microsoft。服务总线。信息。QueueClient类。 然后,我尝试使用Azure Service Bus REST API进行发送,但这需要我构建一个SAS令牌。但要构建SAS令牌,我需要使用Windows。安全密码学。果心MacAlgorithmNames。HmacSha256。此类显示在前面的类型中,但在编译时它不存在。 如何使用

  • 这就是我试图实现的目标,但却出现了Zuul转发错误。 祖尔吉图布 用户注册微服务——它将调用另一个微服务。此外,它还有其他一些API。GitHub链接 UserSearchDelete:上面的UserRegistration microservice将调用此服务。GitHub链接 Eureka服务器:GitHub链接 如果我在本地主机上运行Springboot STS中的服务,那么一切都正常。但如

  • 参考https://github.com/Azure/azure-service-bus/tree/master/samples/dotnet/gettingstart/microsoft.Azure.servicebus/basicsendreceiveusingtopicsubscriptionclient,我了解Azure服务总线主题的一般工作方式,我的问题更多地是关于它实际上是如何工作的。

  • 我正在编写自己的websocket服务器和客户端。我成功地处理了握手并建立了联系。 现在我正在编写send_message函数,它创建了一个合适的框架。下面的例子只是为了这个问题,它不是我最终打算写的,这只是我尝试给我相同的结果的许多方法中的一种。 输入:以上函数应发送 第一个字节 第一位设置为1-,表示这是消息的最后一帧 第二、第三和第四个-所有的零,对于这个例子来说是不相关的 以下四位-000

  • 我有一个BE服务a,它正在使用假客户端向microservice B发送Rest JSON消息: 终点: Rest Endpoint正在向AWS Ses邮件或其他邮件提供商发送邮件。 问题是来自飞格的第一个呼叫可能需要5秒或更长时间。我需要使其异步,以便FE客户端不要等待邮件发送。 我如何可以使从飞度异步发出的Rest调用到超文本传输协议响应OK没有等待时间可以预期?是否有一些更好的解决方案来实现