It would be convenient to provide a new kind of datasource based on JXPATH.
This datasource could allow access to data from both XML and Java Object without modification in reports design.
This kind of datasource is convenient in the case where you want to design your reports (with JasperAssistant or IReport for example) disconnected from your server, when firewall does not allow JDBC. You download XML, build your report using the XML Document and finally upload the report to your server.
On the server side your use JXPATH Datasource on java objects for speed reasons.
I give an exemple of this kind of datasource as attachment.
Of course, in order to work disconnected with the JXpath Datasource, you have to be able to create an XML document from your object graph.