[ 
https://issues.apache.org/jira/browse/PLUTO-505?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brian DeHamer updated PLUTO-505:
--------------------------------

    Attachment: patch.txt

The attached patch for PortletPreferencesDD.java fixes the issue by ensuring 
the the PreferncesValidator class name is trimmed before it is returned.

> Whitespace in PreferencesValidator declaration results in 
> ClassNotFoundException
> --------------------------------------------------------------------------------
>
>                 Key: PLUTO-505
>                 URL: https://issues.apache.org/jira/browse/PLUTO-505
>             Project: Pluto
>          Issue Type: Bug
>          Components: descriptor
>    Affects Versions: 2.0.0, 2.0-refactoring
>         Environment: JDK 1.5.0_16, Tomcat 5.5.27
>            Reporter: Brian DeHamer
>             Fix For: 2.0.0, 2.0-refactoring
>
>         Attachments: patch.txt
>
>
> If a PreferencesValidator is registered in the portlet deployment descriptor 
> (portlet.xml) with any whitespace between the class name and the surrounding 
> <preferences-validator> element, a ValidatorException is thrown whenever the 
> store() method of the PortletPreferences object is invoked.
> The stack trace looks something like this:
> javax.portlet.ValidatorException: java.lang.ClassNotFoundException: 
>                               
> com.hp.frameworks.sample.search.validation.SearchPreferencesValidator
>                       
>       at 
> org.apache.pluto.internal.PreferencesValidatorRegistry.getPreferencesValidator(PreferencesValidatorRegistry.java:111)
>       at 
> org.apache.pluto.internal.impl.PortletEntityImpl.getPreferencesValidator(PortletEntityImpl.java:167)
>       at 
> org.apache.pluto.internal.impl.PortletPreferencesImpl.internalStore(PortletPreferencesImpl.java:298)
>       at 
> org.apache.pluto.internal.impl.PortletPreferencesImpl.store(PortletPreferencesImpl.java:277)
> The root issue here is that the getPreferencesValidator() method of the 
> org.apache.pluto.descriptors.portlet.PortletPreferencesDD should be trimming 
> the string that is returned so that the whitespace is removed before an 
> attempt is made to instantiate the class.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to