It is a true thing that XML is time consuming both in creation and parsing. Furthermore all those tags make XML a bit of a memory and bandwidth hog.
There are many reasons to use XML but speed is not one of them.
Depending on your user load to make measurements does make it hard to figure out what is causing the slow down. Is there any way you can set up a
test case with a simulated user load?
If this was my problem and it turns out XML is the root cause, I would consider making that Java data object Serializable and send serialized objects back and forth.
Bill