uxing xinclude

Sanjay Verma <[email protected]> Tue, 21 Jan 2020 14:41:23 +0000
Newsgroups gmane.text.xml.xerces-j.user
Message-ID <BL0PR18MB210008693B92596EA2B9263D890D0@BL0PR18MB2100.namprd18.prod.outlook.com>
--_000_BL0PR18MB210008693B92596EA2B9263D890D0BL0PR18MB2100namp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

I am trying to break a large XML file into several smaller ones using xincl=
ude. Th original file is part of a .jar. How can I make the snippets pointe=
d to by xinclude also be part of the .jar. My file looks like this:

main.xml:

<?xml version=3D"1.0"?>
<all>
  <extension xmlns:xi=3D"http://www.w3.org/2001/XInclude" >
    <xi:include href=3D"a.xml" />
  </extension>
<all>

My (Java) program finds the main.xml in the .jar but when parsing and looki=
ng for a.xml which is also in the .jar it throws the following exception:

Found jar entry. URL =3D jar:file:.../test.jar!/main.xml
JAXP: find factoryId =3Djavax.xml.parsers.SAXParserFactory
JAXP: loaded from fallback value: com.sun.org.apache.xerces.internal.jaxp.S=
AXParserFactoryImpl
JAXP: created new instance of class com.sun.org.apache.xerces.internal.jaxp=
.SAXParserFactoryImpl using ClassLoader: null
org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 56; An include =
with href 'a.xml'failed, and no fallback element was found.
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.crea=
teSAXParseException(ErrorHandlerWrapper.java:203)
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fata=
lError(ErrorHandlerWrapper.java:177)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportE=
rror(XMLErrorReporter.java:400)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportE=
rror(XMLErrorReporter.java:327)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportE=
rror(XMLErrorReporter.java:284)
        at com.sun.org.apache.xerces.internal.xinclude.XIncludeHandler.repo=
rtError(XIncludeHandler.java:2395)
        at com.sun.org.apache.xerces.internal.xinclude.XIncludeHandler.repo=
rtFatalError(XIncludeHandler.java:2390)
        at com.sun.org.apache.xerces.internal.xinclude.XIncludeHandler.empt=
yElement(XIncludeHandler.java:985)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl=
.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScann=
erImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.n=
ext(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl=
.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScann=
erImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa=
rse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa=
rse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLPa=
rser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.par=
se(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXPar=
ser.parse(SAXParserImpl.java:643)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXP=
arserImpl.java:327)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:195)
        at com.flextrade.flexoms.syscfg.EntitySpecs.parse(EntitySpecs.java:=
598)
        at com.flextrade.flexoms.syscfg.EntityMaintTP.main(EntityMaintTP.ja=
va:430)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor=
Impl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod=
AccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.jdotsoft.jarloader.JarClassLoader.invokeMain(JarClassLoader.=
java:796)
        at com.flextrade.flexoms.syscfg.Launcher.main(Launcher.java:12)




--_000_BL0PR18MB210008693B92596EA2B9263D890D0BL0PR18MB2100namp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">I am trying to break a large XML file into several s=
maller ones using xinclude. Th original file is part of a .jar. How can I m=
ake the snippets pointed to by xinclude also be part of the .jar. My file l=
ooks like this:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">main.xml:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&lt;?xml version=3D&quot;1.0&quot;?&gt;<o:p></o:p></=
p>
<p class=3D"MsoNormal">&lt;all&gt;<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp; &lt;extension xmlns:xi=3D&quot;<a href=3D"htt=
p://www.w3.org/2001/XInclude">http://www.w3.org/2001/XInclude</a>&quot; &gt=
;<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp; &lt;xi:include href=3D&quot;a.xml=
&quot; /&gt;<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp; &lt;/extension&gt;<o:p></o:p></p>
<p class=3D"MsoNormal">&lt;all&gt;<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">My (Java) program finds the main.xml in the .jar but=
 when parsing and looking for a.xml which is also in the .jar it throws the=
 following exception:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Found jar entry. URL =3D jar:file:&#8230;/test.jar!/=
main.xml<o:p></o:p></p>
<p class=3D"MsoNormal">JAXP: find factoryId =3Djavax.xml.parsers.SAXParserF=
actory<o:p></o:p></p>
<p class=3D"MsoNormal">JAXP: loaded from fallback value: com.sun.org.apache=
.xerces.internal.jaxp.SAXParserFactoryImpl<o:p></o:p></p>
<p class=3D"MsoNormal">JAXP: created new instance of class com.sun.org.apac=
he.xerces.internal.jaxp.SAXParserFactoryImpl using ClassLoader: null<o:p></=
o:p></p>
<p class=3D"MsoNormal">org.xml.sax.SAXParseException; lineNumber: 5; column=
Number: 56; An include with href 'a.xml'failed, and no fallback element was=
 found.<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at com.su=
n.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseExcepti=
on(ErrorHandlerWrapper.java:203)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandl=
erWrapper.java:177)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorRepo=
rter.java:400)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorRepo=
rter.java:327)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorRepo=
rter.java:284)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.xinclude.XIncludeHandler.reportError(XIncludeH=
andler.java:2395)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.xinclude.XIncludeHandler.reportFatalError(XInc=
ludeHandler.java:2390)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.xinclude.XIncludeHandler.emptyElement(XInclude=
Handler.java:985)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement=
(XMLNSDocumentScannerImpl.java:351)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;at com.su=
n.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentCo=
ntentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentSc=
annerImpl.java:602)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocume=
ntScannerImpl.java:112)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocume=
nt(XMLDocumentFragmentScannerImpl.java:505)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at com.su=
n.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configur=
ation.java:842)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configur=
ation.java:771)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)<o:=
p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXPar=
ser.java:1213)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXPars=
erImpl.java:643)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.su=
n.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:32=
7)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at javax.=
xml.parsers.SAXParser.parse(SAXParser.java:195)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.fl=
extrade.flexoms.syscfg.EntitySpecs.parse(EntitySpecs.java:598)<o:p></o:p></=
p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.fl=
extrade.flexoms.syscfg.EntityMaintTP.main(EntityMaintTP.java:430)<o:p></o:p=
></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at sun.re=
flect.NativeMethodAccessorImpl.invoke0(Native Method)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at sun.re=
flect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<o:p=
></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at sun.re=
flect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java=
:43)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at java.l=
ang.reflect.Method.invoke(Method.java:498)<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.jd=
otsoft.jarloader.JarClassLoader.invokeMain(JarClassLoader.java:796)<o:p></o=
:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at com.fl=
extrade.flexoms.syscfg.Launcher.main(Launcher.java:12)<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>

--_000_BL0PR18MB210008693B92596EA2B9263D890D0BL0PR18MB2100namp_--