最近在用hadoop来做文件存储,找到hdfs的客户端访问,具体请见http://badqiu.iteye.com/blog/269641,按照说明很容易部署成功。服务器端为CentOS5.1,编码为UTF-8,但是在Windows环境下使用网上邻居进行操作时,遇到中文乱码问题,查看源码时发现request的编码为null。经过一番实验,终于将乱码问题解决。分为两步:
1、可在http://code.google.com/p/hdfs-webdav/downloads/list上下载到hdfs-webdav解压,找到源码。然后自己写个设置编码的过滤器,编码为UTF-8.并在web.xml进行配置,匹配url为所有即"/*"。
2、修改运行hdfs-webdav的tomcat conf目录下的server.xml,改为
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" useURIEncoding="true" />注意红色的字体为添加的。
通过以上两步应该就可以解决中文乱码问题。
HDFS中文乱码解决方案
本文介绍了在使用HDFS作为文件存储时遇到的中文乱码问题及解决方法。通过自定义编码过滤器并配置Tomcat服务器,实现了在Windows环境下通过网络邻居访问HDFS时中文字符的正确显示。
1654

被折叠的 条评论
为什么被折叠?



