为了账号安全,请及时绑定邮箱和手机立即绑定

从camel xmpp 发送消息时出现问题,jid 格式错误

从camel xmpp 发送消息时出现问题,jid 格式错误

森林海 2023-09-13 15:26:23
我正在尝试使用camel-xmpp-组件从 A@jabber.de 向用户 B@jabber.de 发送一条(私人)直接消息。但它总是说“jid-malformed”。使用此文档:https://camel.apache.org/components/latest/xmpp-component.html使用camel 2.24.2和java 8,但在java 11上有同样的问题。我还尝试在MessageHeaders中设置“from”和“to”。我还查看了该组件的源代码,它总是将“from”-JID 构建为带有“chat@...”的内容,这与使用 smack 库的所有其他教程不同,如下所示:https://www . baeldung.com/xmpp-smack-chat-clientfrom("timer:sendMessage?period=5000")         .setBody(constant("test"))         .to("xmpp:A@jabber.de:5222/B@jabber.de?user=A&password=xxx");我本想发送一条消息,但它登录成功,发送时我在日志中收到以下错误:o.a.c.c.xmpp.XmppLogger        | INBOUND : <message to='A@jabber.de/Camel' from='B@jabber.de@chat:B@jabber.de:A' id='BdCI4-9' type='error'><error type='modify'><jid-malformed xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/><text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>The destination address is invalid: B@jabber.de@chat:B@jabber.de:A</text></error></message>感谢您的任何想法。
查看完整描述

2 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

创建私人消息时,线程名称会附加到 JID 中。

https://github.com/apache/camel/blame/master/components/camel-xmpp/src/main/java/org/apache/camel/component/xmpp/XmppPrivateChatProducer.java#L98

我不是 XMPP 或 Smack 方面的专家,但 Openfire(就我而言)似乎对 JID 中的线程名称不满意。删除线程名称后,我可以发送私人消息。


查看完整回答
反对 回复 2023-09-13
?
MMTTMM

TA贡献1869条经验 获得超4个赞

看起来您忘记了“xmpp:”后面的尾部斜杠。



查看完整回答
反对 回复 2023-09-13
  • 2 回答
  • 0 关注
  • 65 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信