编码JMS TextMessage

dr *_*rry 6 jms character-encoding

我正在接收来自JMS MQ队列的消息,这些消息应该被utf-8编码.然而,在阅读出来时,msgText = ((TextMessage)msg).getText(); 我得到了非标准字符存在的问号.在使用a时似乎可以指定编码bytemessage,但我无法在读出时找到指定编码的方法TextMessage.有没有办法解决这个问题,还是我应该按bytemessages

dr *_*rry 4

我们尝试添加Dfile.encoding="UTF-8"到 的Webspherejvm 并添加

source = new StreamSource(new ByteArrayInputStream(
     ((TextMessage) msg).getText().getBytes("UTF-8")));
Run Code Online (Sandbox Code Playgroud)

在我们的MessageListener。这对我们有用,所以我们把那Dfile.encoding部分拿走了,它仍然对我们有用。

由于首选最低配置Websphere,我们决定保留这种方式,同时考虑到我们可以UTF-8通过文件或数据库中的设置更轻松地切换字符串。