[KULRICE-8554] AbstractLookupableHelperServiceImpl validateSearchParameters throws excepton if errorMap is not empty, which makes LookupAction search call unusable in some situations Created: 16/Nov/12  Updated: 16/Jan/15

Status: Open
Project: Kuali Rice Development
Component/s: Development
Affects Version/s: None
Fix Version/s: Backlog
Security Level: Public (Public: Anyone can view)

Type: Improvement Priority: Minor
Reporter: Jerry Neal (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: Old
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
cloned from KULRICE-7208 Template Closed
discovered by KFSMI-940 AbstractLookupableHelperServiceImpl v... Rice Roadblock
Similar issues:
KULRICE-1979AbstractLookupableHelperServiceImpl validateSearchParameters throws excepton if errorMap is not empty, which makes LookupAction search call unusable in some situations
KULRICE-12171KualiHelpAction.getAttributeHelpText throws NPEs in some cases
KULRICE-12259CXF mishandles empty collections in document search customization
KULRICE-3801Fix the way that "empty" KIM objects are handled
KULRICE-3343KimTypeServIveBase class has protected method which can return null but calling method is assuming non-null value
KULRICE-1284Protect call to get property type in PojoPropertyUtilsBean from throwing exceptions
KULRICE-14034Blank proposition labels make proposition tree unusable
KULRICE-2302Allow AbstractLookupableHelperServiceImpl to use serivce locators instead of injection.
KULRICE-11302Need JPA implementations for some persistence related methods that the KNS used to use.
KULRICE-9740Modify AnnotationMetadataProviderImpl so that it can handle a situation where a module currently has no data objects
Rice Module:
KAI Review Status: Not Required
KTI Review Status: Not Required


We have a situation in budget where we are doing some extra processing of lookup results (overriding LookupAction), if there are errors we add them to GlobalVariables errorMap and then call LookupAction.search to redisplay the search
results. LookupAction:search calls validateSearchParameters on lookupable, which calls lookupableHelperService and the default AbstractLookupableHelperServiceImpl implementation. The default implementation throws an exception at the
end of processing if the errorMap is not empty:

if (!GlobalVariables.getErrorMap().isEmpty())

{ throw new ValidationException("errors in search criteria"); }

So if there were errors previous to the method call but the validation was OK an exception will still be thrown. I believe it would be better if the method just checked for errors encountered within the method itself (maybe by a boolean) and then throw
an exception, allowing for the errorMap to contain errors from previous code.

Generated at Fri Jul 03 06:46:32 CDT 2020 using JIRA 6.1.5#6160-sha1:a61a0fc278117a0da0ec9b89167b8f29b6afdab2.