近期碰到一个编码的问题,发现整个平台都是用的GB2312,因此导致webservice调用时有些字不能正常接受。

反编译中间件的源码如下:

public static final String node2String(Node node, boolean isPreserveSpace)
{
if (node == null)
return null;
if (node.getNodeType() == 9) {
node = ((Document)node).getDocumentElement();
}
OutputFormat format = new OutputFormat(node.getOwnerDocument()); String strEncoding = System.getProperty("xml.encoding");
if (strEncoding != null) format.setEncoding(strEncoding); else {
format.setEncoding("GB2312");
}
format.setIndenting(false); format.setPreserveSpace(isPreserveSpace);
StringWriter stringOut = new StringWriter();
XMLSerializer serial = new XMLSerializer(stringOut, format);
try {
serial.asDOMSerializer();
serial.serialize((Element)node);
} catch (IOException ex) {
throw new EOSFailure(ex);
}
return stringOut.toString();
}

由以上代码得知,如果属性xml.encoding为空,则平台编码默认为GB2312,所以得想办法设置该属性:

1、tomcat配置

编辑startTomcat.cmd,找到如下配置:

set JAVA_OPTS=-Xms128m -Xmx512m -DEOSCipherProvider=SunJCE

加上xml.ecoding的配置

set JAVA_OPTS=-Xms128m -Xmx512m -DEOSCipherProvider=SunJCE   -Dxml.encoding=GBK

2、websphere6的配置,需要在websphere的管理控制台中配置

1)、选择安装了EOS应用的服务器

2)、选择进程定义

3)、选择JAVA虚拟机

4)、选择JAVA虚拟机的定制属性

5)、查看EOS的JVM环境变量配置

在这里添加一个xml.encoding=GBK的属性

Java系统变量设置方式的更多相关文章

  1. java环境变量设置

    java环境变量设置 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Ja ...

  2. java环境变量设置--编写一年java,竟不会配变量了

    java环境变量设置 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Ja ...

  3. java环境变量设置方法

    1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08:    2.安装完成后,右击“我的电脑”,点击“属性”:         3.选择“高 ...

  4. java环境变量设置与java查看安装路径

    把jdk安装到计算机中之后,我们来进行设置使java环境能够使用. 首先右键点我的电脑.打开属性.然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量需要设置三个属性“JAVA_HOME”. ...

  5. Java 环境变量设置 -- JAVA_HOME CLASSPATH

    1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 ...

  6. win7中java编程工具安装 java环境变量设置

    一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...

  7. mac java环境变量设置

    Mac下添加java环境变量 方法一:全局配置   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #临时提权   sudo su   #输入密码   vi /et ...

  8. java 环境变量 设置 问题

    问题按照网上教程配置好了  tomcat可以用了.但是发现java不能用. 网上教程(类似教程太多了 ,就不 具体说了 http://jingyan.baidu.com/article/f96699b ...

  9. Windows-001-Win7系统变量设置

    本节主要讲述Windows系统环境变量配置介绍,以 Windows 7 为例讲解. 1.右键单击 计算机,选择 属性,进入 系统 界面,如下所示: 2.点击上图中的 高级系统设置,进入 系统属性 界面 ...

随机推荐

  1. C## 输出Hello world

    首先新建一个项目 然后在文件D:\C##Obj\HelloWorld\HelloWorld\Program.cs using System; using System.Collections.Gene ...

  2. 拦截器getmodel方法什么时候被调用(没搞懂有什么鸟用,自己搭的项目中用到了这个)

    拦截器是Struts2最强大的特性之一,它是一种可以让用户在Action执行之前和Result执行之后进行一些功能处理的机制.Struts2 的预定义拦截器 modelDriven 如果action实 ...

  3. while read line无法循环read文件

    while read line 与for循环的区别 例子:要从一个ip列表中获取ip.port,然后ssh ip 到目标机器进行特定的command操作ssh -o StrictHostKeyChec ...

  4. OC - 31.通过封装的自定义布局快速实现商品展示

    概述 实现效果 设计思路 采用MVC架构,即模型—视图-控制器架构 使用MJExtension框架实现字典转模型 使用MJRefresh框架实现上拉和下拉刷新 上拉刷新,加载新的数据 下拉刷新,加载更 ...

  5. JavaScript HTML DOM - 改变CSS

    JavaScript HTML DOM - 改变CSS HTML DOM 允许 JavaScript 改变 HTML 元素的样式. 改变 HTML 样式 如需改变 HTML 元素的样式,请使用这个语法 ...

  6. C# 线程数

    理论上,一个进程可用虚拟空间是2G,默认情况下,线程的栈的大小是1MB,所以理论上最多只能创建2048个线程,但是一般不会到这么大,因为主线程要占内存,可能还要多点.如果要创建多于2048的话,必须修 ...

  7. Linux抓包工具tcpdump详解

    tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题排查的首选工具. tcpd ...

  8. 【模板】【网络流】Dinic

    /* 唐代杜荀鹤 <小松> 自小刺头深草里,而今渐觉出蓬蒿. 时人不识凌云木,直待凌云始道高. */ #include <iostream> #include <cstd ...

  9. iOS把两张图片合成一张图片

    0x00 步骤 先读取两张图片把创建出CGImageRef 创建上下文画布 把图片依次画在画布指定位置上 从上下文中获得合并后的图片 关闭上下文 释放内存 0x01 代码实现 - (void)comp ...

  10. Transpose File

    Given a text file file.txt, transpose its content. You may assume that each row has the same number ...