Well, you have some problems there ;
First, is better to don't do all that stuff in constructor because if XmlParser fail it raise an exception and gui things get undone and appear other problems, because the exception is raised in constructor.
Your program get linked and executed(you didn't know it run) but because you don't catch the exception it finish immediately after start or it enter in a infinite loop while checking your xml file(that depends on circumstances, in the state that you put it here it get in infinite loop and if you try to correct it, then you will get some exceptions).
My advice is to use a construction like that in main function.
Other problem I've spotted is that you're not checking all xml tags and you're expecting that "message" tag to appear after "new" tag, instead based on your file the tag "timing" follow "new" tag, so your parsing loop get infinite because of that.
Verdict: Defective by design.