JSF is a useful and powerful framework, but there's no benefit in using it where it's a bad fit. After all, JSF also carries a lot of overhead. And there's no need for each and every page that comes out of a JSF app to be a JSF page - JSF is a helper, not a controller.
Rather than kludge out something to make JSF emit XML, consider simply creating an XML
JSP (jspx). Remember, there's nothing magic about backing beans - a backing bean with session scope is just another session scope JavaBean. So you can access it using the normal session object methods in a
servlet, JSP or even
Struts action just as easily as you can from a JSF page.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.