xml - stax parsing using java if element value blank then assign parsing element to upper element -
i parsing big xml input data using stax parser.
my input xml part below
<user> <loginname>abcd</loginname> <firstname>abcd</firstname> <lastname>kkk</lastname> <companyname>infosys</companyname> <emailaddress>mmm@gmail.com</emailaddress> <corporateemailaddress></corporateemailaddress> </user>
my stax code below
private static message parsemessage(xmlstreamreader xr) throws xmlstreamexception { string username = null; string content = null; string email = null; string comp = null; while (xr.hasnext()) { int event = xr.next(); switch (event) { case xmlstreamconstants.start_element: { string elname = xr.getlocalname(); if (login_name.equals(elname)) { username = xr.getelementtext(); } else if (content.equals(elname)) { content = stringutils.trimtoempty(xr.getelementtext()); content = content.replace("\n"," "); } else if (corp_email_address.equals(elname)) { email = xr.getelementtext(); /*if(email.equals("")) email ="unknown";*/ conv.emails.add(email); } else if (company_name.equals(elname)) { comp = xr.getelementtext(); conv.comps.add(comp); //system.out.println(comp); } break; } case xmlstreamconstants.end_element: { string elname = xr.getlocalname(); if (message.equals(elname)) { return new message(username, content,email); } break; } case xmlstreamconstants.end_document: throw new xmlstreamexception("xml not well-formed: <" + message + "> tag not closed"); } }
here in code if xr.getelementtext(email) null doesnot have value. in case want use tag value
so how assign again xr.elementtext loginvalue? when cor-email null
please help
Comments
Post a Comment