我有一些来自Weblogic 10.3服务器的JMS文件存储,如果可能的话,我想在不使用Weblogic的情况下检索它们中包含的消息。这可能吗?
很多年前,我能够使用Java序列化(ObjectInputStream)读取以前版本的Weblogic的JMS文件存储,但是我拥有的文件正在给我一个
java.io.StreamCorruptedException: invalid stream header: C001BEAD
当我使用ObjectInputStream打开它们时出现异常。我想知道在我反序列化消息之前是否需要跳过文件头,或者这个版本的Weblogic根本不使用Java序列化。
文件中的消息是MapMessages。我可以看到与地图键对应的字符串,当我十六进制转储文件时,但当然这些值不可读。但是,我可以看到地图键的事实让我希望消息在文件中被序列化。
有关如何挽救数据的任何想法?
答案 0 :(得分:2)
此时,数据存储区已准备好使用您编写的QueueBrowser或TopicSubscriber进行检查/转储。或者,您可以使用Hermes JMS(http://www.hermesjms.com)临时处理消息。 Hermes具有可以为您的自定义消息类型实现的消息呈现器。
答案 1 :(得分:0)
我们和Oracle支持能够提出的唯一方法是创建另一个以相同方式配置的Weblogic实例,并让该Weblogic实例接收并处理消息。