问题一
c通过http调用java提供的方法,传送xml。遇到一个奇怪的问题。肉眼看到传输过来的xml是没有问题的。
传过来的xml,如下:
<?xml version="1.0" encoding="UTF-8"?><SmsReq> <Tel_No>13800009999</Tel_No> <Login_Tm>2013-03-21 12:00:00</Login_Tm> </SmsReq>
这段xml我放到jmeter里面请求我的java服务和我自己用java程序模拟http请求直接将这段字符串发过来,也都是可以解析的。
唯独通过c过来后。DocumentHelper.parseText(rsXml); 报如下错误。
org.dom4j.DocumentException: Error on line 1 of document : Content is not allowed in trailing section. Nested exception: Content is not allowed in trailing section.
最后怀疑xml中有什么不显示的非法字符导致无法解析。随加replaceAll("[^\\x20-\\x7e]", "");解析正常。
具体哪些字符是非法的,刚才我想着通过[\\x20-\\x7e]这个正则取出xml里面到底是哪些字符非法。写了如下方法:
private static void getStrings(String str) {
Pattern p = Pattern.compile("[^\\x20-\\x7e]");
Matcher m = p.matcher(str);
ArrayList<String> strs = new ArrayList<String>();
while (m.find()) {
strs.add(m.group(0));
}
for (String s : strs){
System.out.println(s+"==");
}
}
输出的结果像一个空格。但是是不显示的。推测应该是从c传到java的过程中多了某个不可显示的字符在此也不必深究了,以后注意。
问题二
由于java项目是springMvc。所以控制层都交给spring管理。但是c过来的http。在spring管理的控制层中无法获取request.getInputStream()。最后无奈改成servlet。二者方法里面的代码完全一致。servlet正常获取。
原因至今不明。感谢这位仁兄给出的思路。解决了问题。
http://www.bitscn.com/pdb/java/200806/143983.html
客户端需要加如下代码:
java:httpURLConnection.setRequestProperty("content-type", "text/html");
c:ghttp_set_header(request, http_hdr_Content_Type, "text/html;charset=UTF-8");
相关推荐
基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目 基于lucene的开发JavaEE项目
Java+EE说明精通JavaEE项目案例 Java+EE说明精通JavaEE项目案例 Java+EE说明精通JavaEE项目案例 没有源码
JAVAEE期末项目总结报告.doc
JavaEE+项目案例+(代码+数据库)
飞达商贸有限公司POS系统 东城大学在线答疑系统 A10酒店预订管理系统 远洋网络购物广场商务系统 时讯科技人事管理系统 骄阳网上票务查询系统 慕仁大学图书馆管理系统 华北城市大学学生管理系统 迅捷中介二手房交易...
《JavaEE编程课程设计》期末项目报告书.docx《JavaEE编程课程设计》期末项目报告书.docx《JavaEE编程课程设计》期末项目报告书.docx《JavaEE编程课程设计》期末项目报告书.docx《JavaEE编程课程设计》期末项目报告书...
ant +build.xml 文件Jenkins部署javaEE项目,助力成功自动化部署。ant +build.xml 文件Jenkins部署javaEE项目,助力成功自动化部署。ant +build.xml 文件Jenkins部署javaEE项目,助力成功自动化部署。ant +build.xml...
在线订购子系统(JSP+JavaBean)
案例4:公告管理系统(JSP+Struts)
JavaEE项目开发脚手架(公众号:kaitao-1234567,《亿级流量网站架构核心技术》)
50632135002173628_基于JAVAEE项目管理信息化系统设计与实现0515.zip
精通JavaEE项目案例基于EclipseSpringStrutsHibernate(光盘7)源码
一个完整的JavaEE项目流程,其中包含代码
包含项目所需的数据库源文件(sql语句),和javaEE源码,在Eclipse+Myeclipse(插件)下开发,sqlserver2005数据库。可以供大家学习用,项目中完美结合了struts2的实战,用struts2实现了上传下载文件等、struts2的...
JAVAEE 项目.zip
javaee 项目源码
案例3:信息发布平台(JSP+Servlet)
业务逻辑层实现代码,通过使用模型驱动方式和自动校验方式进行查询化的实现
JavaEE JavaEE 项目