フォーラム

ホーム » Liferay Portal » English » 3. Development

構造的に表示 平面上に表示 ツリー上に表示
スレッド [ 前へ | 次へ ]
toggle
Frank Walter
[Mobile Device Detection] Execute a rule multiple times on public pages
2013/02/11 10:29
答え

Frank Walter

ランク: New Member

投稿: 5

参加年月日: 2009/09/04

最近の投稿

Hello,

i created a hook to add my own mobile device detection rule and action. I configured a page to use them and so far everything works great when i am logged in. Every time i refresh the page the rule and the action are getting executed.

But if i access the page as a guest user, they only get executed once and if i refresh the page or click on another page and return they are being ignored.
I am reading some cookie information in the action to change things depending on the values there. So i need it to get them executed every time.


Does anybody know if there is a configuration for this behavior? If not could you tell me what i have to modify to get it work like in the case when a user is logged in?

Thanks!
Frank Walter
RE: [Mobile Device Detection] Execute a rule multiple times on public pages
2013/02/13 9:57
答え

Frank Walter

ランク: New Member

投稿: 5

参加年月日: 2009/09/04

最近の投稿

So the problem was the com.liferay.portal.servlet.filters.cache.CacheFilter.

It checks if a user is logged in or if there are any portlets on the page that don't have the <layout-cacheable>true</layout-cacheable> attribute configured in liferay-portlet.xml.

My public pages didn't have any portlets so i attached one on every page and now it works.
Juan Gonzalez
RE: [Mobile Device Detection] Execute a rule multiple times on public pages
2013/02/13 10:54
答え

Juan Gonzalez

LIFERAY STAFF

ランク: Liferay Legend

投稿: 2892

参加年月日: 2008/10/28

最近の投稿

Hi Frank,

Thanks for sharing the solution, but, what do you mean by "attach one on every page"?


Thanks again!
Frank Walter
RE: [Mobile Device Detection] Execute a rule multiple times on public pages
2013/02/14 1:57
答え

Frank Walter

ランク: New Member

投稿: 5

参加年月日: 2009/09/04

最近の投稿

Just add it to a page (into a layout template column).

The CacheFilter iterates through the first 10 columns so i think it wouldnt work if you would integrate a portlet directly into a template.