|
|
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Считываю через jsp новости в формате RSS <%@ taglib uri="http://jakarta.apache.org/taglibs/xtags-1.0" prefix="xtags" %> <%@ page contentType="text/html; charset=Windows-1251" %> <xtags:parse url="http://www.mm.com.ua/russian/news/rss.xml" id="mydoc" /> <xtags:style document="<%=mydoc%>" xsl="/rss/rss0.91.xsl" outputMethod="html"/> Это работает, но очень странно - если исходный rss.xml скачать и положить на локальный сервер - проблем нет, пробовал закачать его на хостинг своего провайдера - тоже работает. Но с хостинга первоисточника (в примере указан реальный URL) работать не желает - выдает 500 ошибку. Ошибку вызывает парсинг, до XSLT трансформации дело даже не доходит. Если делать трансформацию сразу, минуя парсинг вот так - <xtags:style xml="http://www.mm.com.ua/russian/news/rss.xml" xsl="/rss/rss0.91.xsl" outputMethod="html"/> Все работает, но парсинг нужен для определения версии RSS , чтобы использовать соответствующий XSLT. Если у кого есть мысли - буду признателен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 01:53 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
Либо у провайдера не установлены необходимые для парсинга библиотеки, либо версии библиотек староваты, в любом случае вопрос в суппорт хостера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 11:03 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
Прошу прощения, не разобрался в вопросе! Возможно проблема в том что у Вашего приложения не хватает прав на сетевые соединения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 11:05 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
to Kachalov Мое приложение это jsp страница. С соединением все в порядке, т.к. сам файл rss.xml ей доступен и она даже может его трансформировать <xtags:style xml="http://www.mm.com.ua/russian/news/rss.xml" xsl="/rss/rss0.91.xsl" outputMethod="html"/> Проблема возникает при попытке этот файл распарсить <xtags:parse url="http://www.mm.com.ua/russian/news/rss.xml" id="mydoc" /> Вы можете попробовать сделать тоже самое - код я весь привел. Нужно только установить библиотеку тегов xtags ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 11:17 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
А в логах что ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 11:21 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
to dominator exception javax.servlet.ServletException: Error on line 1 of document http://www.mm.com.ua/russian/news/rss.xml : org.apache.crimson.parser/P-076 Malformed UTF-8 char -- is an XML encoding declaration missing? Nested exception: org.apache.crimson.parser/P-076 Malformed UTF-8 char -- is an XML encoding declaration missing? org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779) org.apache.jsp.rss.rss_jsp._jspService(org.apache.jsp.rss.rss_jsp:190) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) LogFilter.doFilter(Unknown Source) root cause org.apache.taglibs.xtags.util.JspNestedException: Error on line 1 of document http://www.mm.com.ua/russian/news/rss.xml : org.apache.crimson.parser/P-076 Malformed UTF-8 char -- is an XML encoding declaration missing? Nested exception: org.apache.crimson.parser/P-076 Malformed UTF-8 char -- is an XML encoding declaration missing? org.apache.taglibs.xtags.util.JspNestedException.fillInStackTrace(JspNestedException.java:68) java.lang.Throwable.<init>(Throwable.java:196) java.lang.Exception.<init>(Exception.java:41) javax.servlet.jsp.JspException.<init>(JspException.java:47) org.apache.taglibs.xtags.util.JspNestedException.<init>(JspNestedException.java:45) org.apache.taglibs.xtags.xpath.AbstractBodyTag.handleException(AbstractBodyTag.java:46) org.apache.taglibs.xtags.xpath.ParseTag.doStartTag(ParseTag.java:78) org.apache.jsp.rss.rss_jsp._jspService(org.apache.jsp.rss.rss_jsp:79) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) LogFilter.doFilter(Unknown Source) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 11:51 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
Похоже проблема с кодировками, парсер считает что документ пришел в UTF-8, а это очевидно не так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 12:57 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
to Kachalov Поставил вместо <%@ page contentType="text/html; charset=Windows-1251" %> <%@ page contentType="text/html; charset=UTF-8" %> эффекта не дало, может я Вас не правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2006, 14:08 |
|
||
|
Проблема парсинга XML при помощи библиотеки тегов
|
|||
|---|---|---|---|
|
#18+
to Kachalov Получилось такое решение <%@ taglib uri="http://jakarta.apache.org/taglibs/xtags-1.0" prefix="xtags" %> <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> <c:set var="url"><%= request.getParameter("url") %></c:set> <xtags:parse id="mydoc" > <c:import url="${url}" charEncoding="windows-1251" /> <%-- KOI8_R --%> </xtags:parse> <xtags:choose> <xtags:when test="rss/@version='2.0'"> <xtags:style document="<%=mydoc%>" xsl="/rss/rss2.0.xsl" outputMethod="html"/> </xtags:when> <xtags:when test="rss/@version='0.91'"> <xtags:style document="<%=mydoc%>" xsl="/rss/rss0.91.xsl" outputMethod="html"/> </xtags:when> <xtags:otherwise> другая версия RSS </xtags:otherwise> </xtags:choose> Работает, но кодировки ставлю руками. Может кто знает, как можно определить кодировку анализируемого XML файла, для того, чтобы его правильно распарсить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.07.2006, 01:49 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=715&tid=2148819]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 349ms |

| 0 / 0 |
