Guest User

Untitled

a guest
May 22nd, 2012
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. Only one element is being added to an ArrayList while parsing XML
  2. if (startElement.getName().toString().equals("accountid")){
  3. pos.account =
  4. }
  5.  
  6. import java.io.FileNotFoundException;
  7. import java.io.StringReader;
  8. import java.util.ArrayList;
  9. import java.util.Iterator;
  10. import java.util.List;
  11.  
  12. public class StaXParser {
  13.  
  14. @SuppressWarnings({ "unchecked", "null" })
  15. public static void main(String args[]) {
  16.  
  17. List<Position> items = new ArrayList<Position>();
  18. try {
  19.  
  20. String documentAsString = "<request>rn" + "<accountid>12333</accountid>rn" + "<accountid>123</accountid>rn" + "</request>";
  21. StringReader stringReadertext = new StringReader(documentAsString);
  22. XMLInputFactory inputFactory = XMLInputFactory.newInstance();
  23. XMLStreamReader reader = inputFactory.createXMLStreamReader(stringReadertext);
  24.  
  25. XMLEventReader eventReader = inputFactory.createXMLEventReader(reader);
  26.  
  27. Position pos = null;
  28.  
  29. while (eventReader.hasNext()) {
  30. XMLEvent event = eventReader.nextEvent();
  31.  
  32. if (event.isStartElement()) {
  33. StartElement startElement = event.asStartElement();
  34. if (startElement.getName().toString().equals("request"))
  35. pos = new Position();
  36. if (startElement.getName().toString().equals("accountid")) {
  37. // System.out.println("yes");
  38. pos.account = eventReader.getElementText().toString();
  39. System.out.println("first" + pos.account);
  40. }
  41. if (startElement.getName().toString().equals("userid"))
  42. pos.accountType = eventReader.getElementText(); // Mapped
  43. // to
  44. // userid
  45. }
  46.  
  47. if (event.isEndElement()) {
  48. EndElement endElement = event.asEndElement();
  49. if (endElement.getName().toString().equals("request")) {
  50. // System.out.println("also");
  51. items.add(pos);
  52. }
  53. }
  54.  
  55. }
  56.  
  57. Iterator itr = items.iterator();
  58. while (itr.hasNext()) {
  59.  
  60. // System.out.println("ssssssss");
  61. Position posss = (Position) itr.next();
  62. System.out.println(posss.account);
  63. }
  64. }
  65.  
  66. catch (XMLStreamException e) {
  67. e.printStackTrace();
  68. }
  69.  
  70. }
  71.  
  72. }
Advertisement
Add Comment
Please, Sign In to add comment