[jboss-user] [JBoss Portal] - Re: Unable to persist preferences.

PeterJ do-not-reply at jboss.com
Wed Jul 19 18:35:05 EDT 2006


I didn't say that the weather portlet was not working.  I can see the local weather with it just fine.  But the reason that it works is that the processAction methods sets "newZip" in the response parameters and then redirects to the view.  The view then uses the "newZip" parameter, and not the value from the preferences.  If there is no "newZip" parameter, then the weather in Miami shows, which is what is set in portlet.xml.

I have been digging through the code and have come to the conclusion that this problem is all related to a configuration setting.  That is, if the portlet is configured to treat preferences as read-only, it will ignore all changes.  Code in PortletPreferencesImpl.sotre():

if (prefs.isReadOnly() == false)
  | {
  |    PropertyChange[] changes = (PropertyChange[])updates.values().toArray(new PropertyChange[updates.size()]);
  |    prefs.update(changes);
  | }

But I have not yet found where the "isReadOnly()" value of "prefs" originates.  Seems that every class is getting it from somewhere else.  Someone someplace must be setting the original value, but I haven't tracked it down yet.

This is not to be confused with the user not having write privileges on the preferences, in which case an exception gets thrown when the PortletPreferences.setvalue() method is called (such as when you are not logged into the portal).

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3959369#3959369

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3959369



More information about the jboss-user mailing list