留言板

RE: Page reload the previous state of the application in portlet (liferay)

Gabriel Frias,修改在11 年前。

Page reload the previous state of the application in portlet (liferay)

New Member 帖子: 8 加入日期: 12-7-27 最近的帖子
Hi Everyboy... well i need a little help with this problem...

This is my problem: I have a toolbar in my liferay in this toolbar I have the page named "Sistema", on this page I have a portlet with a login, my portlet is develop in primefaces, when you are loggin in the portlet it works fine, the problem is when you click in the toolbar of my liferay for example in "Sistema" the page reload the previous state, the page is in the loggin again and it must be in the second page of my portlet and not in the login, because i didn't close the session.

I know that the variables sessions of the portlets are actives because in the log of my tomcat it shows as not null.

Please help me!!!...

Thanks for you answers....
thumbnail
Neil Griffin,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

Liferay Legend 帖子: 2655 加入日期: 05-7-27 最近的帖子
Are you saying that your PrimeFaces portlet has the ability to login to Liferay, similar to what the out-of-the-box Liferay Sign-In portlet does?
Gabriel Frias,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

New Member 帖子: 8 加入日期: 12-7-27 最近的帖子
Well Im using liferay only as a portlet container, so in my portlet when I loggin the portlet acces to my system developed in primefaces... im using a different loggin to access liferay control panel...

Thanks for your soon answer...
thumbnail
Neil Griffin,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

Liferay Legend 帖子: 2655 加入日期: 05-7-27 最近的帖子
OK, so first you have to login to Liferay Portal, then you display a PrimeFaces portlet that has a second login to access your other system?
Gabriel Frias,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

New Member 帖子: 8 加入日期: 12-7-27 最近的帖子
Yes, my friend I think that the problem is the contextExternal because when I loggin in the primefaces portlet the log of my tomcat shows the contextExternal like this: com.liferay.faces.bridge.context.ExternalContextImpl@6fa874 so if the login is valid the contextExternal of my second page is com.liferay.faces.bridge.context.ExternalContextImpl@1067ce in that case i think its fine that the contextExternal has to change but when I click in my page "Sistema" again without logout, the contextExternal its diferent so that is why it redirect to the primefaces portlet loggin and i think that te contextExternal must be the same as it shows when i am in the second page ("com.liferay.faces.bridge.context.ExternalContextImpl@1067ce").

I wonder if i can control that when i am login in the primefaces portlet the contextExternal doesn't change.

If this is possible please tell me how can do it...

I thank you for all you answers...
thumbnail
Neil Griffin,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

Liferay Legend 帖子: 2655 加入日期: 05-7-27 最近的帖子
Every time there is a new request from the browser, Liferay Portal will create a corresponding PortletRequest and invoke the Portlet Lifecycle for GenericFacesPortlet. From there, it create an instance of Liferay Faces Bridge which creates a new FacesContext ThreadLocal instance. So that means that each request has a new FacesContext, and each new FacesContext will have its own new instance of ExternalContext.
Gabriel Frias,修改在11 年前。

RE: Page reload the previous state of the application in portlet (liferay)

New Member 帖子: 8 加入日期: 12-7-27 最近的帖子
Thanks for your explanation, So I wonder if its posible that i can program the button "Sistema" that shows my primeface portlet to get a way not to redirect to my loggin when i request i new instance of the External Context...

Can you tell me please??...