Forums

Home » Liferay Portal » English » 3. Development

Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Luca Lupo
[SOLVED] WebContent Cache??
October 3, 2012 8:08 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

Hi Guys,

I have created a plugin Ext to extend the core's action that "display/render" a web content in Liferay.

com.liferay.portlet.journalcontent.action.ViewAction

The purpose is to allow end users to insert special tag in the web content (for example, <username />) and to render those tags with specific values (for username the username of the real user in the portal).

I believe I have a problem in the port let/webcontent cache. Basically, If another user (let's say Paul) accesses the portal after a first user (let's say Luca) already accessed, the portal renders the web content with the tag <username /> set to Luca instead of <username /> (so i can detect it and change with Paul).

So it's like life ray is reusing the portlet web content from a sort of cache instead of taking it from the DB again and clean.

Any hint?

Luca
Jignesh Vachhani
RE: WebContent Cash??
October 3, 2012 4:52 AM
Answer

Jignesh Vachhani

Rank: Liferay Master

Posts: 780

Join Date: March 10, 2008

Recent Posts

You can give a try by clearing DB cache from liferay control panel.
Hopw this will resolve and if still issue persist , please post your some of code here which can help to understand the exact thing.
Luca Lupo
RE: WebContent Cache??
October 3, 2012 5:09 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

Thanks a lot Jignesh that worked. Now, the question is: how do I do the cache clearing by code?
Jignesh Vachhani
RE: WebContent Cache??
October 3, 2012 5:32 AM
Answer

Jignesh Vachhani

Rank: Liferay Master

Posts: 780

Join Date: March 10, 2008

Recent Posts

Luca Lupo:
Thanks a lot Jignesh that worked. Now, the question is: how do I do the cache clearing by code?



You can use JournalContentUtil.clearCache() OR JournalContentUtil.clearCache(groupId, articleId, templateId);

Hope this will work !!!!
Luca Lupo
RE: WebContent Cash??
October 3, 2012 5:24 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

In particular, the cache i have to clear is the following:

Clear content cached across the cluster.

Hint?
Luca Lupo
RE: WebContent Cache??
October 3, 2012 5:25 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

Trying...thanks...I'll let you know
Luca Lupo
RE: WebContent Cache??
October 3, 2012 5:33 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

clearCache() worked emoticon

Thanksssssss
Jignesh Vachhani
RE: WebContent Cache??
October 3, 2012 5:38 AM
Answer

Jignesh Vachhani

Rank: Liferay Master

Posts: 780

Join Date: March 10, 2008

Recent Posts

Luca Lupo:
clearCache() worked emoticon

Thanksssssss


That's awesome . Mark this thread as answered emoticon
Luca Lupo
RE: WebContent Cache??
October 3, 2012 8:09 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

how?
Ondřej Životský
RE: [SOLVED] WebContent Cache??
October 4, 2012 1:57 AM
Answer

Ondřej Životský

Rank: Junior Member

Posts: 28

Join Date: March 11, 2011

Recent Posts

Hi,
you choosed solution which works, It´s great...

One little note - Liferay has better solution for your requirement. It is transformer. You can create EXT plugin with MyPlaceholders class and register it in portal-ext.properties (key journal.transformer.listener - add your class to the end). MyPlaceholders class can extend BaseTransformerListener and easily modify WebContent before it is shown. So you don't need to modify Liferay classes. But I'm not exactly sure how cache works here... ;)
Luca Lupo
RE: [SOLVED] WebContent Cache??
October 4, 2012 2:25 AM
Answer

Luca Lupo

Rank: Regular Member

Posts: 106

Join Date: October 1, 2012

Recent Posts

Thanks Ondřej, i will give it a try soon. Now, I'm busy with another thing that might be of interest for you guys (create my own asset publisher). Thus, no extension, but a brand new portlet without writing again the code from the beginning but using the one Asset Publisher uses and modifying that. emoticon