报错的信息为:The type org.xmlpull.v1.XmlPullParser cannot
be resolved.

/**

 * 扩展XStream 支持CDATA

 */

private static XStream xstream = new XStream(new XppDriver(){

public HierarchicalStreamWriter createWriter(Writer out) {

return new PrettyPrintWriter(out){

//对全部XML节点的转换加入CDATA标志

boolean cdata =true;

@SuppressWarnings("unchecked")

public void starNode(String name,Class clazz) {

super.startNode(name,clazz);



}

protected void  writeText(QuickWriter writer,String text) {

if(cdata){

writer.write("<![CDATA[");

writer.write(text);

writer.write("]]>");

}else {

writer.write(text);

}



}

};

}

}); 

/**

 * 文本消息对象转换为xml

 * @param textMessage 文本消息对象

 * @return

 */

public static String messageToXml(TextMessage textMessage) {

xstream.alias("xml", textMessage.getClass());

return xstream.toXML(textMessage);

}

/**

 * 图片消息对象转换为xml

 * @param imageMessage 图片消息对象

 * @return

 */

public static String messageToXml(ImageMessage imageMessage) {

xstream.alias("xml", imageMessage.getClass());

return xstream.toXML(imageMessage);

}





/**

 * 语音消息对象转换为xml

 * @param voiceMessage 语音消息对象

 * @return

 */

public static String messageToXml(VoiceMessage voiceMessage) {

xstream.alias("xml", voiceMessage.getClass());

return xstream.toXML(voiceMessage);

}

/**

 * 视频消息对象转换为xml

 * @param videoMessage 视频消息对象

 * @return

 */

public static String messageToXml(VideoMessage videoMessage) {

xstream.alias("xml", videoMessage.getClass());

return xstream.toXML(videoMessage);

}

/**

 * 音乐消息对象转换为xml

 * @param musicMessage 音乐消息对象

 * @return

 */

public static String messageToXml(MusicMessage musicMessage) {

xstream.alias("xml", musicMessage.getClass());

return xstream.toXML(musicMessage);

}

/**

 * 图文消息对象转换为xml

 * @param newsMessage 图文消息对象

 * @return

 */

public static String messageToXml(NewsMessage newsMessage) {

xstream.alias("xml", newsMessage.getClass());

xstream.alias("item", new Article().getClass());

return xstream.toXML(newsMessage);

}

}

处理的方法就是

在当前类的第一行(package位置)会提示:Multiple markers at this line

- The type org.xmlpull.v1.XmlPullParser cannot be resolved. It is indirectly referenced from required .class files

- The type org.xmlpull.v1.XmlPullParser cannot be resolved. It is indirectly referenced from required .class files

- The type org.xmlpull.v1.XmlPullParserException cannot be resolved. It is indirectly referenced from 

required .class files

这种信息,这是由于XStream仅仅是一个jar文件,可是它里面会依赖一个jar包,依赖的jar包是:xmlpull_1_0_5.jar、仅仅要把这个jar包引入之后。问题就可以解决!

微信开发,对象转换为xml时候引用XStream这个类报错处理方案的更多相关文章

  1. Java&Xml教程(八)使用JDOM将Java对象转换为XML

    在前面的教程中我们学习了如何使用JDOM解析和修改XML文件内容,本节介绍如何将Java对象转换为XML数据并生成文件. JDOM的Document类提供了便捷的方法创建元素和属性,XMLOutput ...

  2. web.xml配置文件中<async-supported>true</async-supported>报错

    web.xml配置文件中<async-supported>true</async-supported>报错 http://blog.csdn.net/dream_ll/arti ...

  3. 今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2

    今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2 查官方文档 解决方法 在 PowerShell中运行以下内容, 然后重启服务器 # Enab ...

  4. 微信公众号开发上传图文素材带有卡片小程序报错:errcode=45166,errmsg = invalid content hint

    微信公众号开发自从支持允许在群发图文中插入小程序,方便了小程序的运营及推广.最近在三方服务开发中,要支持图文素材插入小程序遇到了一个很是棘手的问题.官方给出的插入小程序的示例支持文字.图片.卡片.如下 ...

  5. 用XmlSerializer进行xml反序列化的时候,程序报错: 不应有 <xml xmlns=''>

    原因 一,类型错误: 比如xml本来是UserInfo类型 用XmlSerializer进行反序列化传入的类型是MemberInfo这就会报错 二,xml根节点和对象的类名不一致,而又没有对类加入[X ...

  6. web.xml配置文件中<async-supported>true</async-supported>报错的解决方案

    为什么用到这个: ssh集成了cxf,当登录系统后,发现系统报错,控制台不断输出下面信息: 2016-05-05 11:05:06 - [http-bio-8080-exec-4] - WARN - ...

  7. 微信小程序中 this.setData is not a function报错

    在微信小程序中我们一般通过以下方式来修改data中的数据: 比如获取小程序缓存: wx.getStorage({ key: 'is_screen', success: function (res) { ...

  8. 关于mybatis的xml文件中使用 >= 或者 <= 号报错的解决方案

    当我们需要通过xml格式处理sql语句时,经常会用到< ,<=,>,>=等符号,但是很容易引起xml格式的错误,这样会导致后台将xml字符串转换为xml文档时报错,从而导致程序 ...

  9. 微信开发者工具导入 wepy 项目“app.json 未找到”报错解决方法

    版本信息: 微信开发者工具:1.03.2101150 wepy:2.0 wepy/cli:6.14.8 问题描述 按照 wepy 文档中的步骤新建项目: $ npm install @wepy/cli ...

随机推荐

  1. nGrinder对监控机器收集自定义数据及源码分析

    转载:https://blog.csdn.net/neven7/article/details/50782451 0.背景 性能测试工具nGrinder支持在无需修改源码的情况下,对目标服务器收集自定 ...

  2. 安装Ubuntu 桌面版 12.04 LTS 过程之记录

    [下载ISO文件刻录到光盘上] 1.首先从http://www.ubuntu.com/download/desktop/zh-CN找到合适的版本下载. 2.完毕后,将ISO文件放好.然后启动nero, ...

  3. (笔试题)删除K位数字

    题目: 现有一个 n 位数,你需要删除其中的 k 位,请问如何删除才能使得剩下的数最大? 比如当数为 2319274, k=1 时,删去 2 变成 319274 后是可能的最大值. 思路: 1.贪心算 ...

  4. ubuntu server 安装 mantis bug tracker 中文配置

    ubuntu server 安装 mantis bug tracker 中文配置 官网:http://www.mantisbt.org/ 一:安装: 1:进入到 apache2的网站目录: cd /v ...

  5. iOS强引用和弱引用

    保留一个对象创建了一个对该对象的“强”引用.一个对象只有在它的所有强引用都被释放后才能被回收.因此,一个对象的生命周期取决于其强引用的所有者.在某些情况下,这种行为可能并不理想.您可能想要引用一个对象 ...

  6. 从零开始学JavaScript一(简介)

    概要:JavaScript的组成. 各个组成部分的作用 .   一.JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成  Javascript  ECMAScript(核心) DOM ...

  7. KVC简介 -字典转模型,模型转字典

    // 下面两个方法.都属于 KVC 的方法 // KVC 是 cocoa 的大招.间接给对象属性设置数值 // 程序运行过程中,动态给对象属性设置数值.不关心 .h 中是怎样定义的 //      仅 ...

  8. VB调用VC dll的返回方式

    第一种类型:数值传递 注意:在VB中,默认变量传递方式为ByRef为地址,而传递值就是用ByVal,还要注意在C++中,int类型的变量是32位的,在VB中要用long型变量来配合.VC++部分: e ...

  9. 关于NHibernate中存在于Session中实例的3种状态的简单分析

    在使用NHibernate的时候.在Session中会有3种状态. 1. 瞬时状态 (Transient) 由 new 命令开辟内存空间的对象,也就是平时所熟悉的普通对象. 如: Student st ...

  10. 【Oracle】迁移含有BLOG类型的字段的表

    日常数据库迁移过程中,发现dmp文件中的表,如果表含有blog类型的字段,无法进行迁移. 以下是我迁移含有blog类型字段表的经验分享' 使用PLSQL Developer进行导出 接着选择需要导出的 ...