The default controller used in simple-portal isn't ready for production, it's just there to demo a usecase for a simple portal.
In GateIn portal the URLs aren't generated the same way and some of the data is passed in session.
You would have to create your own controller.
See here where all state is stored as parameters
To create the URL:
Thanks Thomas. Yes I was looking at those 2 classes and didn't feel right about them. Is it possibly to have a more robust implementation of the url renderer added to the controller module of portlet container project? I would have thought that only the module assemblying simple-portal war was for demo purpose so not quite production ready but other modules should be good?