<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>Setting PortletPreferences programmatically</title>
  <link rel="self" href="https://liferay.dev/nl/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=14679642" />
  <subtitle>Setting PortletPreferences programmatically</subtitle>
  <id>https://liferay.dev/nl/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=14679642</id>
  <updated>2026-05-14T02:25:00Z</updated>
  <dc:date>2026-05-14T02:25:00Z</dc:date>
  <entry>
    <title>RE: Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20997571" />
    <author>
      <name>Samujjwal Sahu</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20997571</id>
    <updated>2013-01-28T08:23:05Z</updated>
    <published>2013-01-28T08:23:05Z</published>
    <summary type="html">Thanks for the reply Jitendra...&lt;br /&gt;Actually in Liferay 6.1 they have created two article-id and group -id in PortletPreference object.&lt;br /&gt;articleId and groupId .. After setting the values in these two fields its working fine. &lt;img alt="emoticon" src="@theme_images_path@/emoticons/happy.gif" &gt;</summary>
    <dc:creator>Samujjwal Sahu</dc:creator>
    <dc:date>2013-01-28T08:23:05Z</dc:date>
  </entry>
  <entry>
    <title>RE: Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20978431" />
    <author>
      <name>Jitendra Rajput</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20978431</id>
    <updated>2013-01-26T03:52:05Z</updated>
    <published>2013-01-26T03:52:05Z</published>
    <summary type="html">If you simply want to store your form elements value in preferences then here is trick in LR 6.1&lt;br /&gt;Check this http://itsliferay.blogspot.in/2013/01/save-portlet-preferences-in-liferay-61.html.</summary>
    <dc:creator>Jitendra Rajput</dc:creator>
    <dc:date>2013-01-26T03:52:05Z</dc:date>
  </entry>
  <entry>
    <title>RE: Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20956565" />
    <author>
      <name>Samujjwal Sahu</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=20956565</id>
    <updated>2013-01-25T09:25:16Z</updated>
    <published>2013-01-25T09:25:16Z</published>
    <summary type="html">I am using Liferay 6.1EE&lt;br /&gt;And its not working in my case. &lt;br /&gt;Attaching you the code .&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;javax.portlet.PortletPreferences preferences = PortletPreferencesFactoryUtil&lt;br /&gt;							.getLayoutPortletSetup(layout, journalPortletId);&lt;br /&gt;							//PortletPreferences prefs = PortletPreferencesFactoryUtil.getLayoutPortletSetup(layout, journalPortletId);&lt;br /&gt;							long ownerId = PortletKeys.PREFS_OWNER_ID_DEFAULT;&lt;br /&gt;							int ownerType =  PortletKeys.PREFS_OWNER_TYPE_LAYOUT;&lt;br /&gt;							preferences.setValue(&amp;#34;article-id&amp;#34;, articleId);&lt;br /&gt;							preferences.setValue(&amp;#34;group-id&amp;#34;, String.valueOf(groupId));&lt;br /&gt;							preferences.store();&lt;br /&gt;							PortletPreferencesLocalServiceUtil&lt;br /&gt;							.updatePreferences(ownerId, ownerType,&lt;br /&gt;									layout.getPlid(), journalPortletId,&lt;br /&gt;									preferences);&lt;br /&gt;							System.out.println(&amp;#34;layout.getPlid() = &amp;#34;+layout.getPlid());&lt;br /&gt;							System.out.println(&amp;#34;---------------------&amp;#34;);&lt;br /&gt;							if (preferences != null) {&lt;br /&gt;								System.out.println(preferences.getMap());&lt;br /&gt;								//System.out.println(&amp;#34;groupId = &amp;#34;+preferences.getValue(&amp;#34;group-id&amp;#34;, &amp;#34;&amp;#34;));&lt;br /&gt;							}&lt;br /&gt;							System.out.println(&amp;#34;---------------------&amp;#34;);&lt;/blockquote&gt;</summary>
    <dc:creator>Samujjwal Sahu</dc:creator>
    <dc:date>2013-01-25T09:25:16Z</dc:date>
  </entry>
  <entry>
    <title>RE: Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14685614" />
    <author>
      <name>Alfredo Larotonda</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14685614</id>
    <updated>2012-07-03T13:03:07Z</updated>
    <published>2012-07-03T13:03:07Z</published>
    <summary type="html">Thanks , at least I found the solution!!&lt;br /&gt;The code I used inside my portlet is similar. Here&amp;#39;s:&lt;br /&gt;.&lt;br /&gt;long ownerId = PortletKeys.PREFS_OWNER_ID_DEFAULT;&lt;br /&gt;int ownerType = PortletKeys.PREFS_OWNER_TYPE_LAYOUT;&lt;br /&gt;.&lt;br /&gt;String portletId = &amp;#34;56_INSTANCE_Jn0b&amp;#34;;&lt;br /&gt;javax.portlet.PortletPreferences preferences = PortletPreferencesFactoryUtil&lt;br /&gt;		.getLayoutPortletSetup(mylayout, portletId);&lt;br /&gt;preferences.setValue(&amp;#34;group-id&amp;#34;, new Long(groupId).toString());&lt;br /&gt;preferences.setValue(&amp;#34;article-id&amp;#34;, myarticle.getArticleId());&lt;br /&gt;// update the portlet preferences&lt;br /&gt;PortletPreferencesLocalServiceUtil.updatePreferences(ownerId,&lt;br /&gt;		ownerType, mylayout.getPlid(), portletId, preferences);&lt;br /&gt;&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;In this way I&amp;#39;m able to associate my article (myarticle)  to the web content display of my page (mylayout).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Alfredo</summary>
    <dc:creator>Alfredo Larotonda</dc:creator>
    <dc:date>2012-07-03T13:03:07Z</dc:date>
  </entry>
  <entry>
    <title>RE: Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14684331" />
    <author>
      <name>Yogesh Agrawal</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14684331</id>
    <updated>2012-07-03T11:48:38Z</updated>
    <published>2012-07-03T11:48:38Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;In web content vm template you can try this code to set preferences &lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;code&gt;#set($layoutLocalService = $serviceLocator.findService("com.liferay.portal.service.LayoutLocalService"))
#set($layout = $layoutLocalService.getLayout($getterUtil.getLong($request.theme-display.plid))) 
#set ($locPortletId = "56_INSTANCE_Arg7pSXTGtht")
#set ($portletPreferencesFactoryUtil = $portal.getClass().forName("com.liferay.portlet.PortletPreferencesFactoryUtil"))
#set ($portletSetup = $portletPreferencesFactoryUtil.getLayoutPortletSetup($layout, $locPortletId))
#set ($temp = $portletSetup.setValue("articleId", "11039"))
#set ($temp = $portletSetup.setValue("groupId", $groupId.toString()))
#set ($temp = $portletSetup.store())&lt;/code&gt;&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Yogesh Agrawal</dc:creator>
    <dc:date>2012-07-03T11:48:38Z</dc:date>
  </entry>
  <entry>
    <title>Setting PortletPreferences programmatically</title>
    <link rel="alternate" href="https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14679641" />
    <author>
      <name>Alfredo Larotonda</name>
    </author>
    <id>https://liferay.dev/nl/c/message_boards/find_message?p_l_id=119785294&amp;messageId=14679641</id>
    <updated>2012-07-03T07:28:22Z</updated>
    <published>2012-07-03T07:28:22Z</published>
    <summary type="html">I have a page with a WebContentDisplay in it and I have a JournalArticle to associate with it.&lt;br /&gt;i would like to associate the JournalArticle to the portlet programmatically.&lt;br /&gt;&lt;br /&gt;So I get the portlet preferences of the portlet but I don&amp;#39;t know how to set the new values, the article-id for example.&lt;br /&gt;Here&amp;#39;s the code I&amp;#39;m using:&lt;br /&gt;&lt;br /&gt;//getting the portlet preferences of the portlets of my layout&lt;br /&gt;List&amp;lt;com.liferay.portal.model.PortletPreferences&amp;gt; preferences = PortletPreferencesLocalServiceUtil&lt;br /&gt;				.getPortletPreferencesByPlid(layoutDocumenti.getPlid());&lt;br /&gt;//iterating over PortletPreferences&lt;br /&gt;if (preferences != null) {&lt;br /&gt;			for (PortletPreferences preference : preferences) {&lt;br /&gt;//checking the id of the portlet i want to set&lt;br /&gt;			if (preference.getPortletId().equals(&amp;#34;56_INSTANCE_Jn0b&amp;#34;)) {&lt;br /&gt;					//getting the preference&lt;br /&gt;String xml = preference.toXmlString();&lt;br /&gt;&lt;br /&gt;//AND NOW HOW TO SET NEW VALUES ????&lt;br /&gt;					&lt;br /&gt;				}&lt;br /&gt;			}&lt;br /&gt;		}&lt;br /&gt;&lt;br /&gt;Thanks for any idea!!&lt;br /&gt;&lt;br /&gt;Alfredo</summary>
    <dc:creator>Alfredo Larotonda</dc:creator>
    <dc:date>2012-07-03T07:28:22Z</dc:date>
  </entry>
</feed>
