Chciałem sparsować xml z allegro i wyciągnąc kategorie aby wrzucić do klasy ale utknełem.
public class ParseXML {
public static void main(String[] args) throws XMLStreamException {
XMLInputFactory factory = XMLInputFactory.newFactory();
XMLStreamReader parser = factory.createXMLStreamReader(ClassLoader.getSystemResourceAsStream("files/allegro.xml"));
while (parser.hasNext()) {
int event = parser.next();
switch (event) {
case XMLStreamConstants.START_ELEMENT:
if ("item" == parser.getLocalName()){
int attrCount = parser.getAttributeCount();
System.out.println(attrCount);
}
break;
case XMLStreamConstants.CHARACTERS:
String text = parser.getText().trim();
// System.out.println(text);
break;
case XMLStreamConstants.END_ELEMENT:
if ("item" == parser.getLocalName()){
}
break;
case XMLStreamConstants.ATTRIBUTE:
break;
}
}
}
}
część xml
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://webapi.allegro.pl/service.php">
<SOAP-ENV:Body>
<ns1:doGetCatsDataResponse>
<ns1:catsList>
<ns1:item>
<ns1:catId>26013</ns1:catId>
<ns1:catName>Antyki i Sztuka</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>0</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>98553</ns1:catId>
<ns1:catName>Bilety</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>1</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>64477</ns1:catId>
<ns1:catName>Biuro i Reklama</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>2</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>19732</ns1:catId>
<ns1:catName>Biżuteria i Zegarki</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>3</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>73973</ns1:catId>
<ns1:catName>Delikatesy</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>4</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>11763</ns1:catId>
<ns1:catName>Dla Dzieci</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>5</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>5</ns1:catId>
<ns1:catName>Dom i Ogród</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>6</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
<ns1:item>
<ns1:catId>63757</ns1:catId>
<ns1:catName>Erotyka</ns1:catName>
<ns1:catParent>0</ns1:catParent>
<ns1:catPosition>7</ns1:catPosition>
<ns1:catIsProductCatalogueEnabled>0</ns1:catIsProductCatalogueEnabled>
</ns1:item>
....