Tribune

Home » Liferay Portal » English » x. Miscellaneous

Vista Combinata Vista Piatta Vista ad Albero
Discussioni [ Precedente | Successivo ]
toggle
X Man
Portlet Preferences
19 gennaio 2012 4.35
Risposta

X Man

Punteggio: Junior Member

Messaggi: 41

Data di Iscrizione: 5 gennaio 2012

Messaggi recenti

Hello.
I use PortletPreferences class,this code to store preferences in the action(ConfigAction implements ConfigurationAction):
preferences().setValue("greeting", greeting);
preferences().store();

,and this code to retrieve the data in the jsp page:
String greeting = preferences.getValue("greeting", "no peferences");
But I dont get the values that I stored it.
How can I use the preferences successfully.
Thank you.
Dave Weitzel
RE: Portlet Preferences
9 febbraio 2012 20.14
Risposta

Dave Weitzel

Punteggio: Regular Member

Messaggi: 204

Data di Iscrizione: 18 novembre 2009

Messaggi recenti

Are there any errors in your console log or catalina.out file?

I am also having problems using preferences.store() in 6.1 is that the version you are using? I ma be raising a jira ticket tomorrow if I cannot crack it.

to help more perhaps a full snippet of code showing how the preferences were created in the first place.
Sandeep Nair
RE: Portlet Preferences
9 febbraio 2012 22.49
Risposta

Sandeep Nair

Punteggio: Liferay Legend

Messaggi: 1721

Data di Iscrizione: 5 novembre 2008

Messaggi recenti

If you are using ConfigurationAction retrieve portletPreferences like this in java

1String portletResource = ParamUtil.getString(
2            actionRequest, "portletResource");
3
4        PortletPreferences preferences =
5            PortletPreferencesFactoryUtil.getPortletSetup(
6                actionRequest, portletResource);
7preferences().setValue("greeting", greeting);
8preferences().store();


And in jsp use this
 1
 2PortletPreferences preferences = renderRequest.getPreferences();
 3
 4String portletResource = ParamUtil.getString(request, "portletResource");
 5
 6if (Validator.isNotNull(portletResource)) {
 7    preferences = PortletPreferencesFactoryUtil.getPortletSetup(request, portletResource);
 8}
 9String greeting = preferences.getValue("greeting", "no peferences");


Regards,
Sandeep
Ashraf habibi
RE: Portlet Preferences
5 marzo 2014 21.39
Risposta

Ashraf habibi

Punteggio: Junior Member

Messaggi: 32

Data di Iscrizione: 13 maggio 2011

Messaggi recenti

Hi

Its old thread, but my reply will helpful to others.

Portlet preferences based on userId
set the value
long companyId=themeDisplay.getCompanyId();
long ownerId=themeDisplay.getUserId();
int ownerType=PortletKeys.PREFS_OWNER_TYPE_USER;

javax.portlet.PortletPreferences preferences = PortalPreferencesLocalServiceUtil.getPreferences(companyId, ownerId, ownerType);
preferences.setValue(key,value);
preferences.setValue(key,value);
preferences.store();

Get the portlet preferences value
preferences.getValue(key, "No Value ");

if you want to set the portlet preferences based on portletId.
Set the value

ThemeDisplay themeDisplay = (ThemeDisplay)resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);
String portletId=themeDisplay.getPortletDisplay().getId();

javax.portlet.PortletPreferences portletSetup =PortletPreferencesFactoryUtil.getLayoutPortletSetup(themeDisplay.getLayout(), portletId);

try {
portletSetup.setValue(key, value);
portletSetup.setValue(key, value);
try {
portletSetup.store();
} catch (ValidatorException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("value 1.."+portletSetup.getValue(key, "No Value"));
System.out.println("value 2.."+portletSetup.getValue(key, "No Value"));
} catch (ReadOnlyException e) {
e.printStackTrace();
}

Get the Value
portletPrefrence.getValue(key, "No Value");


Hope it will helpful

Thanks,
Ashraf