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


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