'XML to Java Object

I am trying to convert an XML file to a Java Object, now, I have read of JAXB, XStream, Sax and DOM, I'd like to convert this sort of type of xml:

<testxml testtype="converting" duration="100.00" status="successful" />

it might be as well as:

<testxml testype="converting" duration="100.00"> successful </textxml>

I wanted to know if there is anything out there (and possibly not 3rd party) that I can use, without declaring a template in DTD or in JAXB in XSD but Java (therefore I will declare a java class called testxml with all the relevant variable i.e. testtype, duration, status>

Thank you all for your time.



Solution 1:[1]

You can do this pretty simply by using java.xml.bind.annotations on a Java class and JAXB.Unmarshal

JAXB is part of the JRE in java 1.6+

Solution 2:[2]

Try XStream/XPP3. That's good stuff. Takes a couple of hours to figure out. Does all the magic for you.

Solution 3:[3]

Personally I use XStream @ http://x-stream.github.io/ It's really easy to use and still offers enough features in case you need them. Unfortunately it looks like the project is not actively maintained anymore, but I haven't seen an alternative so far that suits my needs as well. I'd say it's worth spending a bit of time to check it out ;-)

edit: when you can use Java 6, I completely agree the other answers are preferable!

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 antlersoft
Solution 2 carlspring
Solution 3