文档章节

Exception in thread "main" org.xmlpull.v1.XmlPullP

J
 Java编程思想
发布于 2014/04/15 11:47
字数 490
阅读 1011
收藏 1

[xmlpull]XmlPull常见错误

编写者

日期

关键词

郑昀@ultrapower

2005-9-28

Xmlpull kxml java

 

Xmlpull官方站点:http://www.xmlpull.org/

优点:不必等整个文档解析完成,部分求值结果早就可以开始反馈给用户。

What Is It?

XmlPull project is dedicated to be a site for

  • for general Pull parsing promotion/education (including StAX) and in particular to contain easy-to-reuse samples and code fragments

  • a resource for discussing new ideas and concepts related to pull parsing

  • a java namespace (org.xmlpull.*) and project location of a free implementation of the event object API and Factories, based on the StAX XMLStreamReade and old Common API for XML Pull Parsing

  • as java namespace and project location of StAX and XmlPull based utilities and samples such as:
    - providing an XML stream from a DOM tree
    - a DOM builder
    - SAX adapter
    - JUnit tests

  • as a maintenance resource for the existing XmlPull interface

常见错误一:XmlPullParserException:resource not found

网络中有很多人问到同样一个问题:

为什么我们在调用

XmlPullParserFactory factory = XmlPullParserFactory.newInstance();

时,总是得到这样的错误:

 错误提示:

Exception in thread "main" org.xmlpull.v1.XmlPullParserException: caused by: org.xmlpull.v1.XmlPullParserException: resource not found: /META-INF/services/org.xmlpull.v1.XmlPullParserFactory make sure that parser implementing XmlPull API is available

    at org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:294)

虽然从http://www.xmlpull.org/v1/doc/api/org/xmlpull/v1/XmlPullParserFactory.html

看到了他们自己的注解:

 XmlPullParserFactory的注释:

If no name of parser factory was passed (or is null) it will try to find name by searching in CLASSPATH for META-INF/services/org.xmlpull.v1.XmlPullParserFactory resource that should contain a comma separated list of class names of factories or parsers to try (in order from left to the right). If none found, it will throw an exception. 
NOTE:In J2SE or J2EE environments, you may want to use 
newInstance(property, classLoaderCtx) where first argument is System.getProperty(XmlPullParserFactory.PROPERTY_NAME) and second is Thread.getContextClassLoader().getClass() .

看来它确实需要寻找这么一个资源:

META-INF/services/org.xmlpull.v1.XmlPullParserFactory

。但又没说如何才能找到它。

解决办法

http://kxml.sourceforge.net/

下载的kxml2.jar加到你的项目中即可。这时候再调用

XmlPullParserFactory factory = XmlPullParserFactory.newInstance(

                            System.getProperty(XmlPullParserFactory.PROPERTY_NAME),

                   Thread.currentThread().getContextClassLoader().getClass() );

就通过了。

kxml2.jar就包含了META-INF/services/org.xmlpull.v1.XmlPullParserFactory文件,它的内容其实就是一句话:

org.kxml2.io.KXmlParser,org.kxml2.io.KXmlSerializer


本文转载自:http://www.cnblogs.com/zhengyun_ustc/archive/2005/09/28/xmlpullerror1.html

J
粉丝 27
博文 164
码字总数 9502
作品 0
广州
程序员
私信 提问
Hibernate配置过程可能发生的问题及解决方法(转)

Hibernate配置过程可能发生的问题及解决方法 收藏 1.问题:Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/DocumentException at HibernateTest.main(HibernateTes......

liueric
2011/03/30
0
0
线程已被中止- “Thread was being aborted”

线程已被中止- “Thread was being aborted” 遇到过这个exception么? 这个exception是为什么而产生的呢? 下面的代码段来自MSDN, 很有说明性. 简单来说, 就是当进程还想继续执行的时候, 发现...

付翔
2013/05/07
0
0
Java多线程中join方法的理解

转载自:http://uule.iteye.com/blog/1101994 博客分类: 多线程 多线程JavathreadITeyeJVM thread.Join把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程。比如在...

lv18092081172
2017/04/25
0
0
线程间的通信

线程间的通信 wait/notify 等待,通知机制的实现 wait()是Object类的方法,在调用wait()方法之前,线程必须获得该对象的对象级别锁,只能在同步中调用wait()方法 notify()也要在同步方法或者...

writeademo
2016/12/28
4
0
java基础进阶(文件列表,线程,线程组)编程实例(4篇)

此处刊登代码均测试通过,完全准确! import java.io.; public class DirList{ public static void main(String[] args){ try{ File path=new File("."); /“.”指当前目录/ String[] list; ......

文艺小青年
2017/11/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

FPGA 设备 USB Platform Cable USB

lsusbFuture Technology Devices International, Ltd FT232H Single HS USB-UART/FIFO IC

MtrS
今天
4
0
lua web快速开发指南(6) - Cache、DB介绍

"数据库"与"缓存"的基本概念 数据库与缓存是服务端开发人员的必学知识点. 数据库 "数据库"是一种信息记录、存取的虚拟标记地点的集合统称. 比如现实生活中, 我们经常会用到文件柜、书桌等等数...

水果糖的小铺子
今天
7
0
Oracle分页查询语句的写法

Oracle分页查询语句的写法 Oracle分页查询语句使我们最常用的语句之一,下面就为您介绍的Oracle分页查询语句的用法,Oracle分页查询语句基本上可以按本文给出的格式来进行套用。   Oracle分...

康师傅
昨天
5
0
java并发图谱

1527
昨天
2
0
Mybatis之拦截器Interceptor

使用mybatis时用PageHelper进行分页,用到了PageInterceptor,借此了解下mybatis的interceptor。Mybatis的版本是3.4.6,MybatisHelper的版本是5.1.3。 1、PageInterceptor 先上一段代码,如下...

克虏伯
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部