我写了一个这样的演员:
import akka.actor.{Actor,Props,ActorLogging}
import akka.camel.{CamelMessage,Consumer}
class XmppConcumer(jid:JID) extends Actor
with Consumer with ActorLogging {
def endpointUri = s"xmpp://${jid.login}@${jid.host}/${jid.resource}?password=${jid.password}"
def receive = {
case msg:CamelMessage => ???
}
}
但是CammelMessage只包含一个XMPP的message-stanza的主体(带有消息> body标签的字符串)和一些标准头文件;但我的消息节是使用一些标签和属性自定义的。如何获取真实节的数据?
答案 0 :(得分:0)
akka-camel组件不允许您访问camel的邮件实例(org.apache.camel.Message
) - 请参阅akka-camel来源 - ;然后我无法将它投射到org.apache.camel.component.xmpp.XmppMessage
。在结果中,我无法访问smack的消息实例。
骆驼的消息不是不可改变的;我认为正因为如此,akka的CamelMessage
没有任何参考骆驼的消息实例。