org.apache.harmony.xml.ExpatParser$ParseException 的问题

2023-12-02

我的 SaxParser 实现有时会抛出

org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: no element found

例外。在下一次尝试中,效果非常好。 一般来说,互联网连接没有问题。

这是我的实现。

1) 所有解析器的基类

public abstract class BaseFeedParser{

    private final URL url;
    private InputStream is;

    protected BaseFeedParser(String url) {
        try {
            this.url = new URL(url);
        } catch (MalformedURLException e) {
            throw new RuntimeException(e);
        }
    }

    protected InputStream getInputStream() {
        try {
            this.is = url.openConnection().getInputStream();
            return is;
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

    protected void closeInputStream() throws IOException{
        if(this.is!=null)
            this.is.close();
    }
}

2) 解析器示例

public class Parser extends BaseFeedParser {

    public void parse() {
        RootElement root = new RootElement("xml");
        //additional 
        Element child = root.getChild("child");
        child.setStartElementListener(new StartElementListener() {          
            @Override
            public void start(Attributes attributes) {
                // do something....
            }
        });

        try {
            Xml.parse(this.getInputStream(), Xml.Encoding.UTF_8, root
                .getContentHandler());

            closeInputStream();

        } catch (Exception e) {
            throw new RuntimeException(e);
        }   
    }
}

有什么建议可能是什么问题吗?


我找到了解决方案。问题不在于 XML 解析器,而在于 NSURLConnection 的错误实现。我切换到 HttpClient,问题就消失了。

更多信息在这里:Http客户端和这里:HttpURLConnection响应代码随机为-1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

org.apache.harmony.xml.ExpatParser$ParseException 的问题 的相关文章

  • ListView 和 CursorAdapter 对于大量数据的性能问题

    我在 sqlite 表中有大约 4k 行 表有 7 列 我用自己的 CursorAdapter 创建了工作 ListView 查询是这样的SELECT FROM table ORDER BY column DESC 表有第一列 id INT
  • OpenGL ES 2.0 中的透明对象

    所以我一直在 Android 上使用 OpenGL ES 2 0 但现在遇到了一个我无法解决的问题 提前道歉 看来我还不能发布两个以上的链接 所以我把我的三张图片放在 Photobucket 相册中 我正在尝试创建一个由透明区域 彩色玻璃
  • Recyclerview 中的 view.GONE 仍保留空间

    我在网上搜索了一下 发现 view invisible 和 view gone 之间有区别 vie gone 必须消失而不保留空间 但它不会发生在我身上 我该如何解决它 请帮忙看看这两张图片的链接 Android模拟器上的结果图 https
  • 自定义 ListView 和 onclick

    这是我的代码 一切 我按照你说的做了 但我仍然无法点击任何内容 我的意思是我可以点击但没有任何反应 package fixus core import java util ArrayList import java util Iterato
  • Kotlin 协程 - 优雅地处理挂起函数中的错误

    尝试使用从异步方法调用的挂起函数来实现对错误的优雅处理 如何捕获挂起方法引发的错误 suspend fun findById id Long User throw Exception my exception intentionally t
  • 清除未接来电并清除 Android 栏中的通知

    使用此代码 我设法将所有未接来电标记为已读 ContentValues values new ContentValues values put Calls NEW 0 if android os Build VERSION SDK INT
  • 如何让精灵对 cocos2d android 中的触摸做出反应?

    我有 1 支枪 当点击屏幕上的任何一点时 子弹都会发射 但根据我的要求 有 3 支枪 精灵 当触摸任何精灵时 子弹必须发射 当谷歌搜索时 我知道这可以是通过使用targetedTouchDelegate或循环所有的精灵并为每个触摸的精灵设置
  • 将倒计时器从 10 秒改为 1 秒

    我有一个倒计时器 它以 1 秒的增量从 10000 毫秒倒计时到 0 毫秒 以使按钮在 10 秒后可单击 尽管计时器是准确的并且按照代码的说明执行操作 但我想更改秒的表示方式 但我不知道如何更改 java void startTimer c
  • 已将 APK 上传到 Play 商店,获得 0 个受支持的设备,但没有错误

    我正在尝试将我的应用程序的 Alpha 版本发布到 Play 商店 但我得到了 0 个受支持的设备 这令人沮丧 因为我没有看到该错误 该项目是一个新的样式 gradle API声明和版本在build gradle中定义 您可以在此处获取该应
  • FirebaseAuth - 让用户使用任何提供商更改密码 - Android

    我有一个社交媒体应用程序 我正在使用FirebaseUI让用户使用电子邮件 Google 或 Facebook 登录 注册应用程序 如果使用 电子邮件 作为密码 我怎样才能让用户稍后更改他 她的密码 提供商 如果使用 Facebook 或
  • 从布局中添加和删除视图

    如何从布局中添加和删除视图 我是这样做的 ViewManager entry getParent removeView entry
  • 如何让文字发光?

    我们可以将发光效果应用于任何文本 如下所示 Updated Please also tell me what things i need to create something like this 我需要为此使用特殊字体吗 如何使用以下命令
  • eclipse 找不到我的 sdk 文件夹

    我已经在 Windows 7 上的 eclipse helios 上安装了 android sdk 和 adt 插件 但是 当我进入首选项时 我在定位 sdk 位置时遇到了问题 我的 SDK 位置是 C Program Files Andr
  • 从主线程查询android中的数据库

    我使用的是 sql lite 通常查询 1 个表 如果我从主 ui 线程进行查询会不会很糟糕 谢谢 这取决于 如果您的表确实很大 则执行查询可能需要一些时间 并且可能会导致您的应用程序出现明显的延迟 还有 你说你usually仅查询一张表
  • 如何解决Android中的NullPointerException错误?

    下面的代码在 Eclipse 的模拟器中运行顺利 但在 Android 手机和平板电脑上运行时出现问题 public class RingerActivity extends Activity Called when the activit
  • 以编程方式更改小部件布局

    假设我有两个小部件布局 Layout1 和 Layout2 小部件的默认值是 Layout1 但我允许用户选择 他们希望小部件采用哪种布局 所以如果用户更改为 Layout2 如何以编程方式将布局更改为 Layout2 小部件没有像活动那样
  • AWS Cognito-获取带有ID的用户信息

    有没有什么方法可以获取 AWS Cognito 池 在 Android 上 中未登录的用户的信息 并知道他的 ID 我尝试了该代码 AppHelper getPool getUser username getDetailsInBackgro
  • 如何使用 Android Volley API?

    我正在考虑在我的下一个项目中实现 Android Volley 库 关于 Volley 的 Google IO 演示 http www youtube com watch v yhv8l9F44qo 但是 我还没有找到该库的任何重要的 AP
  • 如何保存/加载 BigInteger 数组

    我想保存 加载BigInteger数组传入 传出 SharedPreferences 如何做呢 例如对于以下数组 private BigInteger dataCreatedTimes new BigInteger 20 Using Gso
  • onActivityResult() Intent 数据始终为 null

    有人可以告诉我为什么Intent data总是为空 Override protected void onActivityResult int requestCode int resultCode Intent data super onAc

随机推荐