The current situation is following. I have vaadin appllication what is deployed to liferay portal.
My application listening parameters, but I can get any parameters because it is inside portal.
I found one solution to get parameter in liferay using following code:
ParameterHandler is a bit higher level place, there is no http request object instance. Probably, implementing your TransactionListener is what you need
I don’t understand how to TransactionListener can help me? There is only method for listening start and end transaction but parameters can come in many times in one transaction.
/**
* Vaadin "transaction" equals "http request". This method fires for all servlets
* in the session.
*/
private void attachHttpRequestListener() {
getContext().addTransactionListener(new TransactionListener() {
private static final long serialVersionUID = -2365336986843262181L;
public void transactionStart(Application application,
Object transactionData) {
((LocalizedSystemMessages)getSystemMessages()).setThreadLocale(getLocale());
current.set(CompetitionApplication.this); // make the application available via ThreadLocal
HttpServletRequest request = (HttpServletRequest)transactionData;
request.getSession(true).setMaxInactiveInterval(3600);
}
public void transactionEnd(Application application,
Object transactionData) {
// Transaction listener gets fired for all (Http) sessions
// of Vaadin applications, checking to be this one.
if (application == CompetitionApplication.this) {
closeHibernateSession();
}
}
});
}