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.