Note that there are some explanatory texts on larger screens.

plurals
  1. POkxml2 parsing error org.xmlpull.v1.XmlPullParserException
    primarykey
    data
    text
    <p>I have following xml structure:</p> <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;Packages SyncId="634651745071815748" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt; &lt;Package Id="1848f7cc-0ced-fbb7-140e-b485d28c207f" Title="Active Directory" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="960EE89A85EAD6244DAEC389A7103F3A5FBB4EC3"/&gt; &lt;/Package&gt; &lt;Package Id="b923bf10-3a79-a7dc-64dc-9cd875233a3a" Title="Exchange 2007" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="4999D5496086D802FC261F953DDB50B167431E45"/&gt; &lt;/Package&gt; &lt;Package Id="367f0d4b-4656-c628-b75f-26535dfa505c" Title="Exchange 2010" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="320E1D9563CA8FE09FA43D8325F7E9F02BC88737"/&gt;&lt;/Package&gt; &lt;Package Id="2c088847-b1ca-a9f7-29a4-a3fbc8cd3445" Title="Local System" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="FA9BA4CA8B5E626304EDD5323DE252DC0D3F6087"/&gt; &lt;/Package&gt; &lt;Package Id="9ac614f7-e67b-5f98-3197-49de0469fd3b" Title="Network" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="B9B35308E738346CA68970BAB2CEC31B4047983F"/&gt; &lt;/Package&gt; &lt;Package Id="1bac78ad-7834-5549-b775-0ecc7f29b1ae" Title="Routing Table" AvailableContentType="ReportsOnly" Badge="0"&gt; &lt;Icon Id="ABA86D564A461201C0B39785D7A68A3C2CEA4CAD"/&gt; &lt;/Package&gt; &lt;/Packages </code></pre> <p>I want to parse this xml. I wrote this code:</p> <pre><code>public static Packages Parse(String packages) { Packages packs = new Packages(); Document doc= new Document(); byte[] xmlByteArray = packages.getBytes(); ByteArrayInputStream xmlStream = new ByteArrayInputStream(xmlByteArray); xmlStream.reset(); //xmlStream.reset(); InputStreamReader xmlReader = new InputStreamReader(xmlStream); //packages = StringHelper.replace(packages, "&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;", ""); //packages = StringHelper.replace(packages, " xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"", ""); KXmlParser parser = new KXmlParser(); try { parser.setInput(xmlReader); } catch (XmlPullParserException e) { e.printStackTrace(); } try { doc.parse(parser); xmlReader.reset(); String posDesc = parser.getPositionDescription(); **int token = parser.nextTag();** parser.require(XmlPullParser.START_TAG, null, "Packages"); if (parser.getAttributeCount()&gt;0) { if (parser.getAttributeName(0)=="SyncId") packs.SyncId = parser.getAttributeValue(0); } while(parser.nextTag()!=XmlPullParser.END_DOCUMENT) { parser.require(XmlPullParser.START_TAG, null, "Package"); Package pack = new Package(); int packAttrCount = parser.getAttributeCount(); if(packAttrCount&gt;0) { for(int i=0; i&lt;packAttrCount; i++) { if (parser.getAttributeName(i)=="Id") pack.Id=parser.getAttributeValue(i); else if (parser.getAttributeName(i)=="Title") pack.Title=parser.getAttributeValue(i); else if (parser.getAttributeName(i)=="AvailableContentType") pack.AvailableContentType=parser.getAttributeValue(i); else if (parser.getAttributeName(i)=="Badge") pack.Badge=parser.getAttributeValue(i); } } parser.next(); parser.require(XmlPullParser.START_TAG, null, "Icon"); Icon icon = new Icon(); if (parser.getAttributeCount()&gt;0) { if (parser.getAttributeName(0)=="Id") icon.Id=parser.getAttributeValue(0); } parser.nextTag(); if (parser.getName()=="Data") icon.Data=parser.getText(); pack.Icon = icon; packs.Packs.addElement(pack); } } catch (IOException e) { e.printStackTrace(); } catch (XmlPullParserException e) { e.printStackTrace(); } </code></pre> <p>First call parser.next() always return END_DOCUMENT and appropriately I receive exception in require method. </p> <blockquote> <p>org.xmlpull.v1.XmlPullParserException: expected: START_TAG {null}Packages (position:END_DOCUMENT null@1:1268 in java.io.InputStreamReader@bd3ab6b6) </p> </blockquote> <p>What I'm doing wrong? Thanks in advance!</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload