解析rss问题的示例分析
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章将为大家详细讲解有关解析rss问题的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。try{ org.dom4j.io.SAXReader sa
千家信息网最后更新 2025年01月19日解析rss问题的示例分析
这篇文章将为大家详细讲解有关解析rss问题的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
try{ org.dom4j.io.SAXReader saxReader = new org.dom4j.io.SAXReader(); org.dom4j.Document document = saxReader.read(rssUrl); org.dom4j.Element channel = (org.dom4j.Element) document.getRootElement().element("channel"); int index =0; for (java.util.Iterator i = channel.elementIterator("item"); i.hasNext();){ if(index+1>rssTable.Rows.length){ break; } org.dom4j.Element element = (org.dom4j.Element) i.next(); String title = element.elementText("title"); String link = element.elementText("link"); String pubDate = element.elementText("pubDate"); String source = element.elementText("source"); ci.adp.DataRow rssRow = rssTable.getDataRowByIndex(index); rssRow.setValue("TITLE", title); rssRow.setValue("LINK", link); rssRow.setValue("PUBDATE", pubDate); rssRow.setValue("SOURCE", source); /* System.out.println("title标题: " + title); System.out.println("link链接: " + link); System.out.println("pubDate发布时间: " +pubDate); System.out.println("source来源: " + source); */ index++; } }catch (Exception e) { e.printStackTrace(); }
折腾了一上午,终于换一种方式搞定了。
上面这种dom4j方式,在我本机环境(windows+weblogic10+jdk1.6)下没问题,
放到服务器上(linux5.4 x64+weblogic10+jdk1.6)上,始终都报这个错:
[oracle@ablw010215 bin]$ Warning: Caught exception attempting to use SAX to load a SAX XMLReaderWarning: Exception was: java.lang.ClassCastException: com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfigurationWarning: I will print the stack trace then carry on using the default SAX parserjava.lang.ClassCastException: com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfiguration at org.xml.sax.helpers.XMLReaderFactory.loadClass(XMLReaderFactory.java:199) at org.xml.sax.helpers.XMLReaderFactory.createXMLReader(XMLReaderFactory.java:150) at org.dom4j.io.SAXHelper.createXMLReader(SAXHelper.java:83) at org.dom4j.io.SAXReader.createXMLReader(SAXReader.java:894) at org.dom4j.io.SAXReader.getXMLReader(SAXReader.java:715) at org.dom4j.io.SAXReader.read(SAXReader.java:435) at org.dom4j.io.SAXReader.read(SAXReader.java:321) at jsp_servlet._ajax._comm._bbs.__iframearticlecontent._jspService(__iframearticlecontent.java:100) at weblogic.servlet.jsp.JspBase.service(JspBase.java:35) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at ci.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:107) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)org.dom4j.DocumentException: SAX2 driver class weblogic.xml.jaxp.RegistryXMLReader does not implement XMLReader Nested exception: SAX2 driver class weblogic.xml.jaxp.RegistryXMLReader does not implement XMLReader at org.dom4j.io.SAXReader.read(SAXReader.java:484) at org.dom4j.io.SAXReader.read(SAXReader.java:321) at jsp_servlet._ajax._comm._bbs.__iframearticlecontent._jspService(__iframearticlecontent.java:99) at weblogic.servlet.jsp.JspBase.service(JspBase.java:35) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at ci.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:107) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)Nested exception: java.lang.ClassCastException: com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfiguration at org.dom4j.io.SAXHelper.createXMLReader(SAXHelper.java:98) at org.dom4j.io.SAXReader.createXMLReader(SAXReader.java:894) at org.dom4j.io.SAXReader.getXMLReader(SAXReader.java:715) at org.dom4j.io.SAXReader.read(SAXReader.java:435) at org.dom4j.io.SAXReader.read(SAXReader.java:321) at jsp_servlet._ajax._comm._bbs.__iframearticlecontent._jspService(__iframearticlecontent.java:100) at weblogic.servlet.jsp.JspBase.service(JspBase.java:35) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at ci.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:107) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)Nested exception: java.lang.ClassCastException: com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfiguration at org.dom4j.io.SAXHelper.createXMLReader(SAXHelper.java:98) at org.dom4j.io.SAXReader.createXMLReader(SAXReader.java:894) at org.dom4j.io.SAXReader.getXMLReader(SAXReader.java:715) at org.dom4j.io.SAXReader.read(SAXReader.java:435) at org.dom4j.io.SAXReader.read(SAXReader.java:321) at jsp_servlet._ajax._comm._bbs.__iframearticlecontent._jspService(__iframearticlecontent.java:100) at weblogic.servlet.jsp.JspBase.service(JspBase.java:35) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at ci.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:107) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
<2012-11-8 上午10时56分08秒 CST>
<2012-11-8 上午10时56分08秒 CST>
在weblogic.xml加配置文件、加lib包等等都不起作用,换成这个就好了(依赖lib在我上传的资源中,完全免费):
try { URL url = new URL(rss); // 读取Rss源 XmlReader reader = new XmlReader(url); System.out.println("Rss源的编码格式为:" + reader.getEncoding()); SyndFeedInput input = new SyndFeedInput(); SyndFeed feed = input.build(reader); // 得到SyndFeed对象,即得到Rss源里的所有信息 List entries = feed.getEntries(); // 得到Rss新闻中子项列表 int index =0; for (int i = 0; i < entries.size(); i++) { // 循环得到每个子项信息 if(index+1>rssTable.Rows.length){ break; } SyndEntry entry = (SyndEntry) entries.get(i); /* System.out.println("标题:" + entry.getTitle()); System.out.println("连接地址:" + entry.getLink()); SyndContent description = entry.getDescription(); System.out.println("标题简介:" + description.getValue()); System.out.println("发布时间:" + entry.getPublishedDate()); // 以下是Rss源可先的几个部分 System.out.println("标题的作者:" + entry.getAuthor()); */ ci.adp.DataRow rssRow = rssTable.getDataRowByIndex(index); rssRow.setValue("TITLE", entry.getTitle()); rssRow.setValue("LINK", entry.getLink()); rssRow.setValue("PUBDATE", entry.getPublishedDate()); rssRow.setValue("SOURCE", entry.getAuthor()); /* // 此标题所属的范畴 List categoryList = entry.getCategories(); if (categoryList != null) { for (int m = 0; m < categoryList.size(); m++) { SyndCategory category = (SyndCategory) categoryList .get(m); System.out.println("此标题所属的范畴:" + category.getName()); } } */ index++; /* // 得到流媒体播放文件的信息列表 List enclosureList = entry.getEnclosures(); if (enclosureList != null) { for (int n = 0; n < enclosureList.size(); n++) { SyndEnclosure enclosure = (SyndEnclosure) enclosureList .get(n); System.out.println("流媒体播放文件:" + entry.getEnclosures()); } } */ } } catch (Exception e) { e.printStackTrace(); }
org.dom4j.io.SAXReader saxReader = new org.dom4j.io.SAXReader();org.dom4j.Document document = saxReader.read(rssUrl);org.dom4j.Element channel = (org.dom4j.Element) document.getRootElement().element("channel"); int index =0; for (java.util.Iterator i = channel.elementIterator("item"); i.hasNext();){ if(index+1>rssTable.Rows.length){ break; } org.dom4j.Element element = (org.dom4j.Element) i.next(); String title = element.elementText("title"); String link = element.elementText("link"); String pubDate = element.elementText("pubDate"); String source = element.elementText("source"); ci.adp.DataRow rssRow = rssTable.getDataRowByIndex(index); rssRow.setValue("TITLE", title); rssRow.setValue("LINK", link); rssRow.setValue("PUBDATE", pubDate); rssRow.setValue("SOURCE", source); /* System.out.println("title标题: " + title); System.out.println("link链接: " + link); System.out.println("pubDate发布时间: " +pubDate); System.out.println("source来源: " + source); */ index++; }
关于"解析rss问题的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
标题
问题
文件
时间
篇文章
示例
分析
信息
所属
方式
更多
来源
流媒
流媒体
范畴
链接
不错
实用
个部
作用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
沈阳软件开发好学
网络安全黑板如何划分
软件开发通讯稿
长安汽车软件开发二轮面试
东方京海网络安全监测装置
mysql数据库课程是什么
齐向东谈网络安全三大焦点
比特彗星种子服务器节点
用于存放数据库数据和程序
web服务器部署方案
购买数据库怎么报销
企业安全管理数据库
文件夹设置数据库
软件开发遇到不合理需求
查看数据库响应速度慢
松江区信息化软件开发供应商
数据库之间的同步
网络安全馆可以放什么展品
容联云服务器
互联网有股票科技
t1系统 数据库怎么连接
mysql数据库课程是什么
中国农行软件开发中心笔试题
网络安全图片大全卡通
世外桃源网络技术有限公司
数据库的接口技术
mango服务器登录方式
数据库某一年总和
dell服务器报警e1313
服务器精密报警