xmlに当たって応答を入力ストリームに戻しています。このxmlはリモートサーバー上にあります。1つのマシンでJDOMExceptionを取得しても、同じxmlが別のマシンで正常に動作する
私はコードをサーバー上で実行しているときはいつも、JDOMExceptionを返しますが、同じコードをローカルマシン上で実行していて、同じxmlをリモートサーバー上で実行しています。 1行目でエラー:無効なXML文字(ユニコード:コードに5C)が公開識別子で見つかった
URL url = new URL("http://testwww.net/xml/android.xml");
InputStream stream = url.openStream();
try {
SAXBuilder builder = new SAXBuilder(false);
xmlDocument = builder.build(stream);
} catch (JDOMException e) {
throw new Exception("unable to read android listing document", e);
}
スタックトレースは
org.jdom.input.JDOMParseExceptionです。 com.cellularsouth.dao.appsdetails.GetAndroidApps.getCategoriesDataでorg.jdom.input.SAXBuilder.build(SAXBuilder.java:770) でorg.jdom.input.SAXBuilder.build(SAXBuilder.java:468) (AT GetAndroidApps.java:42) at com.cellularsouth.discovercenter.appsdetails.web.AndroidApps.androidCategoryData(AndroidApps.java:28) at com.cellularsouth.servlets.discovercentercontroller.handleRequestInternal(discovercentercontroller.java:62) at org springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) at org.springframework.web.servlet。 DispatcherServlet.doDispatch(DispatcherServlet.java:875)(DispatcherServlet.java:809) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571) at org.springframework.web.servlet。 FrameworkServlet.doGet(FrameworkServlet.java:501) (javax.servlet.http.HttpServlet.java:743) (javax.servlet.http.HttpServlet.service(HttpServlet.java:856) 、weblogic) weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.javaでweblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) でservlet.internal.StubSecurityHelper $ ServletServiceAction.run(StubSecurityHelper.java:227) : 283) weblogic.servlet.internal.ServletS weblogic.security.acl.internal.AuthenticatedSubject.doAs(authenticatedSubject.java:321)のtubImpl.execute(ServletStubImpl.java:175) weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction.run(WebAppServletContext.java:3231) weblogic.servlet.internal.WebAppServletContext.executeでweblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2002) でweblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) (WebAppServletContextで 。 Javaの:1908)weblogic.servlet.internal.ServletRequestImpl.runで (weblogic.work.ExecuteThread.runでweblogic.work.ExecuteThread.executeでServletRequestImpl.java:1362) (ExecuteThread.java:209) (ExecuteThread。 java:181) 原因:org.xml.sax.SAXParseException:公開識別子に無効なXML文字(Unicode:0x5c)が見つかりました。 org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(不明なソース)org.apache.xerces.util.ErrorHandlerWrapper.fatalErrorで (不明なソース)org.apache.xerces.impl.XMLErrorReporter.reportErrorで (不明なソースで org.apache.xerces.impl.XMLErrorReporter.reportError(不明なソースで) )org.apache.xerces.impl.XMLScanner.reportFatalErrorで (不明なソース)
それは私が、実際に私の最初の行でエラーが発生しますここで何か問題を見ることはできません。 XMLは
--------------------------
私は-----続けていますここで問題になる可能性があることを理解できず、同じXMLがあるマシンで正常に実行されていて、他のマシンでは正常に実行されていません。 XMLに問題はありません。
私を助けてください。
ありがとうHP
昨日は回答しましたが、仕事が終わってから再転記しています。 – Gendaful
XMLを追加して、より多くの手がかりを与えてください –