xfire使用中出现故障:

1.

[2014-04-16 14:51:07.564]-[ERROR] org.apache.struts2.dispatcher.Dispatcher Exception occurred during processing request: Could not read XML stream.. Nested exception is javax.xml.stream.XMLStreamException: ParseError at [row,col]:[6,648]

Message: elementGetText() function expects text only elment but START_ELEMENT was encountered.

org.codehaus.xfire.fault.XFireFault: Could not read XML stream.. Nested exception is javax.xml.stream.XMLStreamException: ParseError at [row,col]:[6,648]

Message: elementGetText() function expects text only elment but START_ELEMENT was encountered.

at org.codehaus.xfire.fault.XFireFault.createFault(XFireFault.java:89)

Caused by: org.codehaus.xfire.XFireRuntimeException: Could not read XML stream.. Nested exception is javax.xml.stream.XMLStreamException: ParseError at [row,col]:[6,648]

Message: elementGetText() function expects text only elment but START_ELEMENT was encountered.

at org.codehaus.xfire.aegis.stax.ElementReader.getValue(ElementReader.java:128)

at org.codehaus.xfire.aegis.type.basic.StringType.readObject(StringType.java:21)

at org.codehaus.xfire.aegis.type.basic.BeanType.readObject(BeanType.java:159)

at org.codehaus.xfire.aegis.type.basic.ArrayType.readCollection(ArrayType.java:80)

at org.codehaus.xfire.aegis.type.collection.CollectionType.readObject(CollectionType.java:36)

at org.codehaus.xfire.aegis.AegisBindingProvider.readParameter(AegisBindingProvider.java:169)

at org.codehaus.xfire.service.binding.AbstractBinding.read(AbstractBinding.java:206)

at org.codehaus.xfire.service.binding.WrappedBinding.readMessage(WrappedBinding.java:51)

at org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(SoapBodyHandler.java:42)

at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)

at org.codehaus.xfire.client.Client.onReceive(Client.java:406)

... 82 more

Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[6,648]

Message: elementGetText() function expects text only elment but START_ELEMENT was encountered.

at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.getElementText(XMLStreamReaderImpl.java:851)

at org.codehaus.xfire.util.stax.DepthXMLStreamReader.getElementText(DepthXMLStreamReader.java:86)

at org.codehaus.xfire.util.stax.DepthXMLStreamReader.getElementText(DepthXMLStreamReader.java:86)

at org.codehaus.xfire.aegis.stax.ElementReader.getValue(ElementReader.java:122)

... 92 more







2.

Caused by: org.codehaus.xfire.XFireRuntimeException: Could not read XML stream.. 

Nested exception is com.ctc.wstx.exc.WstxParsingException: Expected a text token, got START_ELEMENT.





问题描写叙述:以上是导入文本件出现错误信息,使用的是字符流进行读取文件。在action层做了对应的处理特殊字符。在传输到service是出现不能解析。

看了网上非常多人提出的jdk问题。冲突问题等解决的方法。都试过没有一个能够。

最后找到一个网友的解决的方法最可行。

就是改动wstx.jar文件。

解决方法:以上问题主要是在传输文本或者xml过程中出现特殊字符。xfire公布的webservice中不能解析一下特殊字符。比方&,¥,{},<>等或者是编码问题,使用统一编码格式传递參数。

将xfire中的wstx-asl-3.2.9.jar包中BaseStreamWriter类中的方法处理xml部分进行改动。加上处理特殊字符就可以解决这个问题。

以上解决方式来自于博客园以为网友提供的解决方式。很感谢该网友提供的帮助,该网友提供的解决方式例如以下:

1.改动wstx-asl-3.2.9.jar包中BaseStreamWriter类。至于改动的文件本人一起上传到资源,希望对遇到此问题的朋友一个小小的帮助。

2.用法:能够直接使用wstx-asl-3.2.9.jar包。改包中已经包括被改动的文件。

或者使用BaseStreamWriter源文件放在src文件夹下。

org.codehaus.xfire.fault.XFireFault: Could not read XML stream.. Nested exception is javax.xml.strea的更多相关文章

  1. org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Server returned error code = 404 for URI.. Check server logs for details

    严重: Servlet.service() for servlet jsp threw exceptionorg.codehaus.xfire.XFireRuntimeException: Could ...

  2. JaxWsDynamicClientFactory弃用了,改成org.codehaus.xfire.client;

    搞了好几天jar包冲突,最后修改接口调用方式 java.lang.IllegalStateException: Unable to create JAXBContext for generated p ...

  3. nested exception is java.lang.NoClassDefFoundError: org/codehaus/jettison/json/JSONObject异常的解决办法

    解决办法:你可以尝试添加一个jar包,因为我加入了一个jar包后错误问题成功解决. 将所需要的jettison-1.2.jar包复制到lib文件夹里面,重启项目,问题搞定.

  4. Xfire soapHeader的WebService权限控制forjava

    研究webservice有一段时间了,觉得用soapHeader来控制访问比较简单,特贴出代码以供大家分享 1.我们可以做一个很简单的ws测试,服务端的接口代码如下: package ws; //Ge ...

  5. xfire集成spring构建webservice

    前言:xfire.spring都是比较流行的技术,这里就不再赘述他们各自的优点:本文着重介绍xfire和spring的整合,不会做太深入的探究. 服务端 1. web.xml配置 spring配置部分 ...

  6. 使用Xfire发布WebService接口遇到的问题:

    问题一: log4j:WARN No appenders could be found for logger (org.codehaus.xfire.transport.DefaultTranspor ...

  7. Xfire实现webservice各种报错详解

    一.No write method for property {http://vo.aa.com}new in class com.aa.vo.TA 使用xfire的ws调用时,会将对象与xml进行捆 ...

  8. XFire客户端调用CXF服务端(四)

    前面章节:http://www.cnblogs.com/xiehongwei/p/8082337.html 已经开发出了CXF服务端,现在用XFire开发客户端调用CXF服务端,代码如下: impor ...

  9. crowd在更改IP后无法登录的问题

    org.codehaus.xfire.fault.XFireFault: Client with address "192.168.1.222", and hostname &qu ...

随机推荐

  1. hdu 1058 dp.Humble Numbers

    Humble Numbers Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Subm ...

  2. 【BZOJ 1566】 1566: [NOI2009]管道取珠 (DP)

    1566: [NOI2009]管道取珠 Time Limit: 20 Sec  Memory Limit: 650 MBSubmit: 1659  Solved: 971 Description In ...

  3. noip200705统计数字

    试题描述: 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出 ...

  4. php上传中文文件文件名乱码问题

    php上传文件是最最基础的一个技术点,但是深入进去也有不少问题需要解决,这不,上传中文文件后,文件名变成了乱码. 下面是问题代码,很简单: 1.问题代码 html部分: <html> &l ...

  5. ACM -- 算法小结(七)Phone list解题报告

          HDOJ -- Phone list解题报告 问题描述:给出一些电话号码,如果有共同前缀则输出NO,如果没有则输出YES. 解题关键:将电话号码进行字符串排序,相邻的电话号码进行比较 Sa ...

  6. IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2) D. Delivery Bears 二分+网络流

    D. Delivery Bears 题目连接: http://www.codeforces.com/contest/653/problem/D Description Niwel is a littl ...

  7. ios开发中object-c中UTF-8 和 GBK 的 NSString 相互转化的方法

    应用都要遇到一个很头疼的问题:文字编码,汉字的 GBK 和 国际通用的 UTF-8 的互相转化稍一不慎, 就会满屏乱码.下面介绍 UTF-8 和 GBK 的 NSString 相互转化的方法   NS ...

  8. 【转】2012年7月12 – 腾讯公司 WEB高级应用开发工程师 最新面试题

    腾讯面试(WEB高级应用开发工程师<PHP>)非答案啊!!! 开始正题之前,容博主啰嗦两句吧,呵呵.(你也可跳过直接到红色字体看题!) 腾讯一直是我很敬重的企业,尽管小企鹅在战略上饱受争议 ...

  9. setTimeout你知多少

    假期这么快就结束了,其实对我来说没什么影响,因为我一周才两节课,对于课多的同学来说,我天天在休假,不要羡慕哟~  但休假并不代表闲着,还是得苦逼的编代码,唉..一入程序深似海.. 不管学得多少,还是总 ...

  10. B-树学习笔记

    转自:http://blog.csdn.net/acs713/article/details/6880375 B-tree(多路搜索树,并不是二叉的)是一种常见的数据结构.使用B-tree结构可以显著 ...