最近公司准备用开发一个短信功能,用华为的包去连接短信网关。但是在一切配好后,居然报错,但是又连接上了模拟网关。这问题就“妖”了······
下面是错误信息:
引用
[Fatal Error] :24:26: An invalid XML character (Unicode: 0xd863) was found in the element content of the document.
org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0xd863) was found in the element content of the document.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:239)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at com.huawei.insa2.util.Cfg.load(Cfg.java:666)
at com.huawei.insa2.util.Cfg.<init>(Cfg.java:70)
at com.huawei.insa2.util.Resource.init(Resource.java:53)
at com.huawei.insa2.util.Resource.<init>(Resource.java:41)
at com.huawei.insa2.comm.cmpp.CMPPConnection.getResource(CMPPConnection.java:103)
at com.huawei.insa2.comm.cmpp.CMPPConnection.<init>(CMPPConnection.java:39)
at com.huawei.smproxy.SMProxy.<init>(SMProxy.java:34)
at com.newcosoft.lsmp.communication.sms.cmpp.service.SmsCmppProxy.<init>(SmsCmppProxy.java:73)
at com.newcosoft.lsmp.communication.sms.cmpp.service.CmppSendHandler.<init>(CmppSendHandler.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at com.newcosoft.lsmp.communication.message.pool.PoolDispatcher.<init>(PoolDispatcher.java:62)
at com.newcosoft.lsmp.communication.sms.cmpp.CmppProxyService.<init>(CmppProxyService.java:51)
at com.newcosoft.lsmp.communication.sms.test.CmppProxyTest.testSendMsg(CmppProxyTest.java:51)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
这个问题我找了两天,去网上也查了资料。也知道是字符编码集的问题,但是就是没解决。最后找同事来看看,拿之前的短信项目做对比,发现原来是执行文件的编码集也要改掉。因为华为的CmppProxy是用GB2312的编译环境编译的,所以无论我怎么去改XML的编码集都不行,哎~~又长见识了·····
分享到:
相关推荐
字符集编码问题字符集编码问题字符集编码问题
myeclipse 中 js文件的编码集设置问题 .doc
mysql中代码集修改的集中方式。开机后不会复原,UTF-8
cocos2d-x android 用到的iconv外部库,能编译上真机,具体方法参考博客 http://blog.csdn.net/zhengyayuan123/article/details/8879671
字符集和编码, 原来是这样
Java字符集和编码 ,Java字符集和编码Java字符集和编码
介绍了各种编码集,如ISO-8859系列以及其他的编码
通用的文件字符编码集判断需要借助第三方包cpdetector.jar 使用Cpdetector jar包检测文件编码需要依赖antlr-2.7.7.jar、chardet-1.0.jar、jargs-1.0.jar三个jar包 本下载资源一站式全包含,并附带亲测有效的片段...
中文汉字编码全集解析图,包含所有汉字对应的16进制编码方式。对汉字解析、协议解析的程序员具有一定的参考价值。
文档中主要介绍了各类字符集以及相关的字符编码,字符的显示原理,从输入到显现的整个过程,程序中出现的乱码问题以及解决方案
JAVA及相关字符集编码问题,相当经典。
字符编码(Character Encoding):是⼀一套法则,使⽤用该法则能够对⾃自然语⾔言 的字符的⼀一个集合(如字⺟母表或⾳音节表),与其他东⻄西的⼀一个集合(如号码或 电脉冲)进⾏行配对。即在符号集合与数字系统...
详细介绍各种字符集编码转换问题,涉及到的各种字符均有介绍。
Unicode、UTF-8格式、Unicode big endian格式的文件读取
GB-T 2312-1980 信息交换用汉字编码字符集 基本集
集装箱的编码规则,判断集装箱号码是否正确。
字符集编码查询/反查工具
在plsql中发现表结构的comment和其他说明出现乱码的情况。
Java及相关字符集编码问题研究.txt
ASCII编码集 很有用!