骆驼:码头反应编码

克里斯

我想在骆驼环境中使用Jetty组件。这是我的spring-config.xml的摘录:

...
<bean id="webEnc" class="web.WebEnc" />
<camelContext>
    <route>
        <from uri="jetty:http://0.0.0.0/enc" />
        <process ref="webEnc" />
    </route>
</camelContext>
...

这是用于返回的代码String

import org.apache.camel.Exchange;
import org.apache.camel.Processor;

public class WebEnc implements Processor{

    @Override
    public void process(Exchange exchange) throws Exception {
        exchange.getOut().setBody("abcäöüß\"€一二三"); //the last three symbols are chinese for '123'
    }
}

本地地址有效(http://127.0.0.1/enc),但浏览器无法正确显示字符串(显示为“abcÃÃö¶¼¼Ÿ”,“,a¸€äºŒä¸‰”)。我认为是问题所在是某种编码,如何设置类似'utf-8'的编码
在这里(http://camel.apache.org/jetty.html我找不到任何有关编码或字符集或类似内容的提示。

克里斯

在Łukasz(根据您的时间来算)的帮助和提示之后,我找到了一个很好的解决方案。这迫使Jetty传递字节,而不是字符串:

exchange.getOut().setBody("abcäöüß\"€一二三".getBytes("utf-32"));

为了帮助浏览器显示正确的符号,我这样做:

exchange.getOut().setHeader(Exchange.CONTENT_TYPE, "text/html; charset=utf-32");

我的firefox无法使用utf-32显示中文符号,而使用utf-8则可以。Chrome会同时使用两种编码。
但是实际上我对此并不感兴趣,我的意图是传递字节。getBytes()做这份工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

骆驼:码头反应编码

来自分类Dev

IS骆驼从码头获得http请求

来自分类Dev

骆驼码头:超出缓冲能力

来自分类Dev

骆驼:更改流编码

来自分类Dev

如何使用骆驼码头组件上传图像

来自分类Dev

如何使用骆驼码头组件上传图像

来自分类Dev

骆驼码头响应是对象ID而不是JAXB生成的XML

来自分类Dev

从码头向队列发送消息时出错(使用骆驼)

来自分类Dev

将骆驼码头组件与REST DSL一起使用-“组件码头不是RestApiConsumerFactory”异常

来自分类Dev

将骆驼码头组件与REST DSL一起使用-“组件码头不是RestApiConsumerFactory”异常

来自分类Dev

反应本地HTML编码

来自分类Dev

反应本地HTML编码

来自分类Dev

反应本地HTML编码

来自分类Dev

码头-如何使骆驼应用程序将事件记录到hawtio的“日志”选项卡中

来自分类Dev

骆驼码头组件,自定义标题过滤器策略

来自分类Dev

码头-如何使骆驼应用程序将事件记录到hawtio的“日志”选项卡中

来自分类Dev

跨域问题:在Karaf环境中与码头一起骑骆驼的浪荡子

来自分类Dev

骆驼:进行转换时如何预测HTTP charchester编码

来自分类Dev

骆驼消耗用base64编码的大文件

来自分类Dev

骆驼文件组件字符集支持什么编码?

来自分类Dev

使用Apache骆驼观察网络上的反应流

来自分类Dev

反应原生地理编码获取地址

来自分类Dev

码头没开

来自分类Dev

Chrubuntu码头

来自分类Dev

Chrubuntu码头

来自分类Dev

Eclipse码头至Mortbay码头

来自分类Dev

骆驼节流

来自分类Dev

骆驼验证

来自分类Dev

是否可以使用 ONE 项目在 Window 和 Linux 上进行编码?(使用纱线,反应)