The following document contains the results of FindBugs Report
FindBugs Version is 1.3.9
Threshold is medium
Effort is min
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory.equals(Object) fails for subtypes | BAD_PRACTICE | EQ_GETCLASS_AND_CLASS_CONSTANT | 210 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Equals method for org.kuali.rice.ken.bo.NotificationChannel assumes the argument is of type NotificationChannel | BAD_PRACTICE | BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS | 260 | Medium |
org.kuali.rice.ken.bo.NotificationChannel defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 260 | High |
org.kuali.rice.ken.bo.NotificationChannel.equals(Object) does not check for null argument | BAD_PRACTICE | NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT | 260 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to lockedDeliveries in org.kuali.rice.ken.dao.impl.NotificationMessegeDeliveryDaoJpa.getLockedDeliveries(Class, GenericDao) | STYLE | DLS_DEAD_LOCAL_STORE | 100 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.rice.ken.service.impl.KENAPIServiceImpl.prefsService | PERFORMANCE | URF_UNREAD_FIELD | 53 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ken.service.impl.NotificationChannelServiceImpl.getAllNotificationChannels() invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 76 | Medium |
org.kuali.rice.ken.service.impl.NotificationChannelServiceImpl.getSubscribableChannels() invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 67 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ken.service.impl.NotificationContentTypeServiceImpl.getAllCurrentContentTypes() invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 132 | Medium |
org.kuali.rice.ken.service.impl.NotificationContentTypeServiceImpl.getNotificationContentType(String) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 60 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of d in org.kuali.rice.ken.service.impl.NotificationMessageContentServiceImpl.parseSerializedNotificationXml(byte[]) on exception path | CORRECTNESS | NP_NULL_ON_SOME_PATH_EXCEPTION | 564 | Medium |
Possible null pointer dereference of d2 in org.kuali.rice.ken.service.impl.NotificationMessageContentServiceImpl.parseSerializedNotificationXml(byte[]) on exception path | CORRECTNESS | NP_NULL_ON_SOME_PATH_EXCEPTION | 574 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to firstMessageDelivery in org.kuali.rice.ken.service.impl.NotificationMessageDeliveryAutoRemovalServiceImpl.processWorkItems(Collection) | STYLE | DLS_DEAD_LOCAL_STORE | 70 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.buildCompleteRecipientList(Notification) | CORRECTNESS | EC_UNRELATED_TYPES | 106 | High |
Call to equals() comparing different types in org.kuali.rice.ken.service.impl.NotificationMessageDeliveryResolverServiceImpl.buildCompleteRecipientList(Notification) | CORRECTNESS | EC_UNRELATED_TYPES | 122 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.ken.service.impl.NotificationRecipientServiceKimImpl.isRecipientValid(String, String) | CORRECTNESS | EC_UNRELATED_TYPES | 79 | High |
Call to equals() comparing different types in org.kuali.rice.ken.service.impl.NotificationRecipientServiceKimImpl.isRecipientValid(String, String) | CORRECTNESS | EC_UNRELATED_TYPES | 83 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Primitive value is boxed and then immediately unboxed in org.kuali.rice.ken.util.Util.cloneNotificationWithoutObjectReferences(Notification) | PERFORMANCE | BX_BOXING_IMMEDIATELY_UNBOXED | 294 | Medium |
org.kuali.rice.ken.util.Util.cloneNotificationWithoutObjectReferences(Notification) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 294 | Medium |
Method org.kuali.rice.ken.util.Util.cloneNotificationWithoutObjectReferences(Notification) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 310 | Medium |
Method org.kuali.rice.ken.util.Util.cloneNotificationWithoutObjectReferences(Notification) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 280 | Medium |
org.kuali.rice.ken.util.Util.cloneNotificationWithoutObjectReferences(Notification) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 277 | Medium |
org.kuali.rice.ken.util.Util.transformContent(Notification) invokes inefficient new String() constructor | PERFORMANCE | DM_STRING_VOID_CTOR | 172 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.AdministerNotificationRequestController.view(HttpServletRequest, HttpServletResponse, AdministerNotificationRequestController$AdministerNotificationRequestCommand) | CORRECTNESS | EC_UNRELATED_TYPES | 213 | High |
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.AdministerNotificationRequestController.view(HttpServletRequest, HttpServletResponse, AdministerNotificationRequestController$AdministerNotificationRequestCommand) | CORRECTNESS | EC_UNRELATED_TYPES | 209 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ken.web.spring.ContentTypeController.displayContentTypeForm(HttpServletRequest, HttpServletResponse) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 121 | Medium |
Write to static field org.kuali.rice.ken.web.spring.ContentTypeController.view from instance method org.kuali.rice.ken.web.spring.ContentTypeController.addContentType(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 143 | High |
Write to static field org.kuali.rice.ken.web.spring.ContentTypeController.view from instance method org.kuali.rice.ken.web.spring.ContentTypeController.displayContentTypeForm(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 114 | High |
Write to static field org.kuali.rice.ken.web.spring.ContentTypeController.view from instance method org.kuali.rice.ken.web.spring.ContentTypeController.displayContentTypes(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 96 | High |
Write to static field org.kuali.rice.ken.web.spring.ContentTypeController.view from instance method org.kuali.rice.ken.web.spring.ContentTypeController.updateContentType(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 182 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.SendEventNotificationMessageController.submitEventNotificationMessage(HttpServletRequest, HttpServletResponse) | CORRECTNESS | EC_UNRELATED_TYPES | 262 | High |
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.SendEventNotificationMessageController.submitEventNotificationMessage(HttpServletRequest, HttpServletResponse) | CORRECTNESS | EC_UNRELATED_TYPES | 258 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.SendNotificationMessageController.submitSimpleNotificationMessage(HttpServletRequest, HttpServletResponse) | CORRECTNESS | EC_UNRELATED_TYPES | 264 | High |
Call to equals() comparing different types in org.kuali.rice.ken.web.spring.SendNotificationMessageController.submitSimpleNotificationMessage(HttpServletRequest, HttpServletResponse) | CORRECTNESS | EC_UNRELATED_TYPES | 260 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Write to static field org.kuali.rice.ken.web.spring.UserPreferencesController.view from instance method org.kuali.rice.ken.web.spring.UserPreferencesController.displayActionListPreferences(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 87 | High |
Write to static field org.kuali.rice.ken.web.spring.UserPreferencesController.view from instance method org.kuali.rice.ken.web.spring.UserPreferencesController.displayUserPreferences(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 103 | High |
Write to static field org.kuali.rice.ken.web.spring.UserPreferencesController.view from instance method org.kuali.rice.ken.web.spring.UserPreferencesController.subscribeToChannel(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 135 | High |
Write to static field org.kuali.rice.ken.web.spring.UserPreferencesController.view from instance method org.kuali.rice.ken.web.spring.UserPreferencesController.unsubscribeFromChannel(HttpServletRequest, HttpServletResponse) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 176 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.actionitem.ActionItemComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 29 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.actionlist.ActionListFilter.getCreateDateFrom() may expose internal representation by returning ActionListFilter.createDateFrom | MALICIOUS_CODE | EI_EXPOSE_REP | 68 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.getCreateDateTo() may expose internal representation by returning ActionListFilter.createDateTo | MALICIOUS_CODE | EI_EXPOSE_REP | 148 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.getLastAssignedDateFrom() may expose internal representation by returning ActionListFilter.lastAssignedDateFrom | MALICIOUS_CODE | EI_EXPOSE_REP | 154 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.getLastAssignedDateTo() may expose internal representation by returning ActionListFilter.lastAssignedDateTo | MALICIOUS_CODE | EI_EXPOSE_REP | 134 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.setCreateDateFrom(Date) may expose internal representation by storing an externally mutable object into ActionListFilter.createDateFrom | MALICIOUS_CODE | EI_EXPOSE_REP2 | 71 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.setCreateDateTo(Date) may expose internal representation by storing an externally mutable object into ActionListFilter.createDateTo | MALICIOUS_CODE | EI_EXPOSE_REP2 | 151 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.setLastAssignedDateFrom(Date) may expose internal representation by storing an externally mutable object into ActionListFilter.lastAssignedDateFrom | MALICIOUS_CODE | EI_EXPOSE_REP2 | 157 | Medium |
org.kuali.rice.kew.actionlist.ActionListFilter.setLastAssignedDateTo(Date) may expose internal representation by storing an externally mutable object into ActionListFilter.lastAssignedDateTo | MALICIOUS_CODE | EI_EXPOSE_REP2 | 137 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to filterDescription in org.kuali.rice.kew.actionlist.dao.impl.ActionListDAOJpaImpl.addToFilterDescription(String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 445 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to filterDescription in org.kuali.rice.kew.actionlist.dao.impl.ActionListDAOOjbImpl.addToFilterDescription(String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 552 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of docType in org.kuali.rice.kew.actionlist.service.impl.ActionListServiceImpl.validateActionItem(ActionItem) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 261 | Medium |
Possible null pointer dereference of docType in org.kuali.rice.kew.actionlist.service.impl.ActionListServiceImpl.validateActionItem(ActionItem) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 261 | Medium |
Possible null pointer dereference of docType in org.kuali.rice.kew.actionlist.service.impl.ActionListServiceImpl.validateActionItem(ActionItem) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 261 | Medium |
Nullcheck of docType at line 265 of value previously dereferenced in org.kuali.rice.kew.actionlist.service.impl.ActionListServiceImpl.validateActionItem(ActionItem) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 261 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to partitions in org.kuali.rice.kew.actionlist.web.ActionListAction.processActionListCustomizations(String, List) | STYLE | DLS_DEAD_LOCAL_STORE | 863 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.actionlist.web.ActionListAction$ActionItemComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 814 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.actionlist.web.ActionListForm.getOutboxItems() may expose internal representation by returning ActionListForm.outboxItems | MALICIOUS_CODE | EI_EXPOSE_REP | 283 | Medium |
org.kuali.rice.kew.actionlist.web.ActionListForm.setOutboxItems(String[]) may expose internal representation by storing an externally mutable object into ActionListForm.outboxItems | MALICIOUS_CODE | EI_EXPOSE_REP2 | 287 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.actionrequest.ActionRequestFactory.createActionRequest(String, Recipient, String, Boolean, String) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 116 | Medium |
Method org.kuali.rice.kew.actionrequest.ActionRequestFactory.setDefaultProperties(ActionRequestValue) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 260 | Medium |
Method org.kuali.rice.kew.actionrequest.ActionRequestFactory.addRoleResponsibilityRequest(List, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 423 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Questionable cast from Collection to abstract class java.util.List in org.kuali.rice.kew.actionrequest.service.impl.ActionRequestServiceImpl.findAllValidRequests(String, Collection, String) | STYLE | BC_BAD_CAST_TO_ABSTRACT_COLLECTION | 547 | High |
Dead store to matchedArs in org.kuali.rice.kew.actionrequest.service.impl.ActionRequestServiceImpl.findAllValidRequests(String, Collection, String) | STYLE | DLS_DEAD_LOCAL_STORE | 545 | High |
Possible null pointer dereference of documentType in org.kuali.rice.kew.actionrequest.service.impl.ActionRequestServiceImpl.updateActionRequestsForResponsibilityChange(Set) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 616 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of systemUserWorkgroup at line 182 of value previously dereferenced in org.kuali.rice.kew.actions.DisapproveAction.generateNotifications(RouteNodeInstance) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 182 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to actionTaken in org.kuali.rice.kew.actions.LogDocumentActionAction.recordAction() | STYLE | DLS_DEAD_LOCAL_STORE | 78 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.actions.SuperUserActionTakenEvent.AUTHORIZATION isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 46 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Impossible cast from org.kuali.rice.core.framework.persistence.jpa.criteria.QueryByCriteria to java.util.List in org.kuali.rice.kew.actiontaken.dao.impl.ActionTakenDAOJpaImpl.findByDocumentIdIgnoreCurrentInd(String) | CORRECTNESS | BC_IMPOSSIBLE_CAST | 94 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing unrelated class and interface in org.kuali.rice.kew.attribute.XMLAttributeUtils.establishFieldLookup(RemotableAttributeField$Builder, Node) | CORRECTNESS | EC_UNRELATED_CLASS_AND_INTERFACE | 90 | High |
Call to equals() comparing unrelated class and interface in org.kuali.rice.kew.attribute.XMLAttributeUtils.establishFieldLookup(RemotableAttributeField$Builder, Node) | CORRECTNESS | EC_UNRELATED_CLASS_AND_INTERFACE | 87 | High |
Call to equals() comparing unrelated class and interface in org.kuali.rice.kew.attribute.XMLAttributeUtils.establishFieldLookup(Field, Node) | CORRECTNESS | EC_UNRELATED_CLASS_AND_INTERFACE | 57 | High |
Call to equals() comparing unrelated class and interface in org.kuali.rice.kew.attribute.XMLAttributeUtils.establishFieldLookup(Field, Node) | CORRECTNESS | EC_UNRELATED_CLASS_AND_INTERFACE | 54 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.config.ThinClientResourceLoader.configureDefaultHttpClientParams(HttpParams) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 232 | Medium |
Method org.kuali.rice.kew.config.ThinClientResourceLoader.initializeHttpClientParams() makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 198 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to orderedResultSetFieldMap in org.kuali.rice.kew.docsearch.DocumentSearchCustomizationMediatorImpl.getDocumentSearchCriteriaConfiguration(DocumentType) | STYLE | DLS_DEAD_LOCAL_STORE | 61 | High |
Method org.kuali.rice.kew.docsearch.DocumentSearchCustomizationMediatorImpl.getDocumentSearchCriteriaConfiguration(DocumentType) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 78 | Medium |
Method org.kuali.rice.kew.docsearch.DocumentSearchCustomizationMediatorImpl.validateLookupFieldParameters(DocumentType, DocumentSearchCriteria) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 109 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.docsearch.SearchableAttributeDateTimeValue.isRangeValid(String, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 218 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.docsearch.SearchableAttributeFloatValue.isRangeValid(String, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 242 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.docsearch.SearchableAttributeLongValue.isRangeValid(String, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 236 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.docsearch.SearchableAttributeStringValue.isRangeValid(String, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 161 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in org.kuali.rice.kew.docsearch.service.impl.DocumentSearchServiceImpl.saveSearch(String, DocumentSearchCriteria) | STYLE | REC_CATCH_EXCEPTION | 552 | Medium |
Method org.kuali.rice.kew.docsearch.service.impl.DocumentSearchServiceImpl.saveSearch(String, DocumentSearchCriteria) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 516 | Medium |
Method org.kuali.rice.kew.docsearch.service.impl.DocumentSearchServiceImpl.getSavedSearchAbbreviatedString(DocumentSearchCriteria) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 432 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.docsearch.xml.StandardGenericXMLSearchableAttribute.getBooleanValue(NamedNodeMap, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 519 | Medium |
org.kuali.rice.kew.docsearch.xml.StandardGenericXMLSearchableAttribute.getBooleanWithPotentialOverrides(List, String) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 511 | Medium |
Method org.kuali.rice.kew.docsearch.xml.StandardGenericXMLSearchableAttribute.generateSearchContent(ExtensionDefinition, String, WorkflowAttributeDefinition) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 98 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.doctype.DocumentTypeAttribute defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 150 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.doctype.DocumentTypePolicy.copy(boolean) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 158 | Medium |
org.kuali.rice.kew.doctype.DocumentTypePolicy.copy(boolean) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 154 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in new org.kuali.rice.kew.doctype.DocumentTypeSecurity(String, String) | STYLE | REC_CATCH_EXCEPTION | 262 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method new org.kuali.rice.kew.doctype.bo.DocumentType() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 119 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to docType in org.kuali.rice.kew.doctype.dao.impl.DocumentTypeDAOJpaImpl.delete(DocumentType) | STYLE | DLS_DEAD_LOCAL_STORE | 61 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.doctype.service.impl.DocumentSecurityServiceImpl.isAuthenticatedByPermission(String, String, String, Map, Map, SecuritySession) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 352 | Medium |
Method org.kuali.rice.kew.doctype.service.impl.DocumentSecurityServiceImpl.partitionDocumentsForSecurity(List, SecuritySession) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 167 | Medium |
Method org.kuali.rice.kew.doctype.service.impl.DocumentSecurityServiceImpl.processDocumentRequiringExtensionProcessing(List, SecuritySession, Set) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 138 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentType) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 109 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to ruleTemplate in org.kuali.rice.kew.documentoperation.web.DocumentOperationAction.refresh(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) | STYLE | DLS_DEAD_LOCAL_STORE | 633 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationAction.getDocument(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 130 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getActionItemOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 172 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getActionRequestOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 144 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getActionTakenOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 151 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getBranchOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 165 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getNodeStateDeleteOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 179 | Medium |
Method org.kuali.rice.kew.documentoperation.web.DocumentOperationForm.getRouteNodeInstanceOp(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 158 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.dto.DTOConverter.createDocumentContentSection(Document, Element, List, String, String, String) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 191 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.engine.BlanketApproveEngine$ProcessEntry be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 263 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.engine.CompatUtils.getLevelForNode(DocumentType, String) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 49 | Medium |
Method org.kuali.rice.kew.engine.CompatUtils.getLevelForNode(RouteNode, String, Integer) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 68 | Medium |
Method org.kuali.rice.kew.engine.CompatUtils.getNodeForLevel(DocumentType, Integer) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 77 | Medium |
Method org.kuali.rice.kew.engine.CompatUtils.getNodeForLevel(RouteNode, Integer, Integer) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 99 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.rice.kew.engine.OrchestrationConfig.notificationType; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | 37 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to processContext in org.kuali.rice.kew.engine.StandardWorkflowEngine.process(String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 140 | Medium |
Method org.kuali.rice.kew.engine.StandardWorkflowEngine.handleBackwardCompatibility(RouteContext, RouteNodeInstance) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 348 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to documentId in org.kuali.rice.kew.engine.node.FYIByNetworkId.process(RouteContext, RouteHelper) | STYLE | DLS_DEAD_LOCAL_STORE | 51 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.engine.node.KRAMetaRuleNode$FinalApproverContext be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 219 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.engine.node.NodeJotter.orchestrateOutput(RouteNodeInstance, NodeType, NodeJotter$SplitJoinContext, int) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 71 | Medium |
Method org.kuali.rice.kew.engine.node.NodeJotter.outputNodeInstanceToLog(RouteNodeInstance, NodeType, int) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 92 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.engine.node.NodeType$ExtensionDepthComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 179 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.engine.node.ProcessDefinitionBo.getVersionNumber() invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 130 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to isParallel in org.kuali.rice.kew.engine.node.RequestActivationNode.activateRequestsCustom(RouteContext, List, List, DocumentRouteHeaderValue, RouteNodeInstance) | STYLE | DLS_DEAD_LOCAL_STORE | 132 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.engine.node.RequestsNode$FinalApproverContext be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 283 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.engine.node.RoleNode$RoleRequestSorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 211 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of nodeList in org.kuali.rice.kew.engine.node.RouteNodeUtils.getCustomRouteNodeElements(RouteNode, String) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 102 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.engine.node.RouteNodeUtils$RouteNodeSorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 199 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to documentType in org.kuali.rice.kew.engine.node.hierarchyrouting.HierarchyRoutingNode.transitioningOutOf(RouteContext, RouteHelper) | STYLE | DLS_DEAD_LOCAL_STORE | 155 | Medium |
Possible null pointer dereference of result in org.kuali.rice.kew.engine.node.hierarchyrouting.HierarchyRoutingNode.transitioningOutOf(RouteContext, RouteHelper) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 191 | Medium |
Nullcheck of requestNodeStop at line 242 of value previously dereferenced in org.kuali.rice.kew.engine.node.hierarchyrouting.HierarchyRoutingNode.canTransitionFrom(HierarchyProvider, HierarchyProvider$Stop, Collection, RouteHelper) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 242 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.engine.node.service.impl.RouteNodeServiceImpl.searchNodeGraphBackward(NodeGraphContext, NodeMatcher) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 347 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.engine.node.service.impl.RouteNodeServiceImpl$NodeInstanceIdSorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 429 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.engine.node.service.impl.RouteNodeServiceImpl$RouteNodeSorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 421 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to processContext in org.kuali.rice.kew.engine.simulation.SimulationEngine.process(String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 147 | Medium |
Method org.kuali.rice.kew.engine.simulation.SimulationEngine.createSimulationDocument(String, SimulationCriteria, RouteContext) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 332 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.impl.action.WorkflowDocumentActionsServiceImpl.routeNodeHasApproverActionRequest(String, String, String) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 1053 | Medium |
Method org.kuali.rice.kew.impl.action.WorkflowDocumentActionsServiceImpl.determineRequestedActionsInternal(DocumentRouteHeaderValue, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 357 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.impl.document.search.DocumentSearchCriteriaBo is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 61 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to superUserSearch in org.kuali.rice.kew.impl.document.search.DocumentSearchCriteriaBoLookupableHelperService.repopulateSearchTypeFlags() | STYLE | DLS_DEAD_LOCAL_STORE | 728 | Medium |
Method org.kuali.rice.kew.impl.document.search.DocumentSearchCriteriaBoLookupableHelperService.cleanupFieldValues(Map, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 197 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.impl.document.search.DocumentSearchGeneratorImpl.populateDocumentAttributesValues(DocumentSearchResult$Builder, Statement) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 317 | High |
Method org.kuali.rice.kew.impl.document.search.DocumentSearchGeneratorImpl.getSearchableAttributeSql(Map, List, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 124 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of config at line 117 of value previously dereferenced in org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule.parsePeopleFlowConfiguration(RouteContext) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 117 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Impossible cast from String to org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule$NameConfig in org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule$PeopleFlowConfig.getName() | CORRECTNESS | BC_IMPOSSIBLE_CAST | 214 | High |
instanceof will always return false in org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule$PeopleFlowConfig.isName(), since a String can't be a org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule$NameConfig | CORRECTNESS | BC_IMPOSSIBLE_INSTANCEOF | 210 | Medium |
instanceof will always return true in org.kuali.rice.kew.impl.peopleflow.PeopleFlowRouteModule$PeopleFlowConfig.isId(), since all String are instances of String | STYLE | BC_VACUOUS_INSTANCEOF | 207 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to bo in org.kuali.rice.kew.impl.repository.KewTypeBoServiceImpl.createKewTypeAttribute(KewTypeAttribute) | STYLE | DLS_DEAD_LOCAL_STORE | 188 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.impl.rule.RuleServiceImpl.getRulesByTemplateNameAndDocumentTypeNameAndEffectiveDate(String, String, DateTime) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 142 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.rice.kew.impl.rule.attribute.WorkflowRuleAttributeHandlerServiceImpl.isWorkflowRuleAttribute(String), since all org.kuali.rice.kew.rule.WorkflowRuleAttribute are instances of org.kuali.rice.kew.rule.WorkflowRuleAttribute | STYLE | BC_VACUOUS_INSTANCEOF | 69 | Medium |
Dead store to errors in org.kuali.rice.kew.impl.rule.attribute.WorkflowRuleAttributeHandlerServiceImpl.validateRuleData(String, Map) | STYLE | DLS_DEAD_LOCAL_STORE | 127 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.mail.service.impl.ActionListEmailServiceImpl.getActionListItemsStat(Collection) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 602 | Medium |
Method org.kuali.rice.kew.mail.service.impl.ActionListEmailServiceImpl.getDailyWeeklyMessageBody(Collection) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 580 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.messaging.exceptionhandling.ExceptionRoutingServiceImpl.generateExceptionGroupRequests(RouteContext) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 150 | Medium |
Method call in org.kuali.rice.kew.messaging.exceptionhandling.ExceptionRoutingServiceImpl.placeInExceptionRouting(String, PersistedMessageBO, String) passes null for nonnull parameter of placeInExceptionRouting(String, RouteNodeInstance, PersistedMessageBO, RouteContext, DocumentRouteHeaderValue, boolean) | CORRECTNESS | NP_NULL_PARAM_DEREF | 63 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.notes.Note.getVersionNumber() invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 258 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in org.kuali.rice.kew.notes.web.AttachmentServlet.doPost(HttpServletRequest, HttpServletResponse) | STYLE | REC_CATCH_EXCEPTION | 124 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.notes.web.NoteAction.initForm(HttpServletRequest, ActionForm) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 211 | Medium |
org.kuali.rice.kew.notes.web.NoteAction.retrieveNoteList(HttpServletRequest, NoteForm) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 240 | Medium |
Method org.kuali.rice.kew.notes.web.NoteAction.edit(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 115 | Medium |
Method org.kuali.rice.kew.notes.web.NoteAction.retrieveNoteList(HttpServletRequest, NoteForm) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 258 | Medium |
Method org.kuali.rice.kew.notes.web.NoteAction.retrieveNoteList(HttpServletRequest, NoteForm) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 234 | Medium |
note could be null and is guaranteed to be dereferenced in org.kuali.rice.kew.notes.web.NoteAction.getAuthorData(Note) | CORRECTNESS | NP_GUARANTEED_DEREF | 277 | Medium |
Nullcheck of routeHeader at line 222 of value previously dereferenced in org.kuali.rice.kew.notes.web.NoteAction.retrieveNoteList(HttpServletRequest, NoteForm) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 222 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.plugin.PluginConfig.getObjects() makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 102 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Inconsistent synchronization of org.kuali.rice.kew.plugin.PluginEnvironment.supressStartupFailure; locked 50% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 145 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.plugin.PluginNameComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 25 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.plugin.ServerPluginRegistry.loadPlugins(File) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 139 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.plugin.ZipFilePluginLoader.createPluginClassLoader() creates a org.kuali.rice.kew.plugin.PluginClassLoader classloader, which should be performed within a doPrivileged block | BAD_PRACTICE | DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED | 179 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.preferences.service.impl.PreferencesServiceImpl$UserOptionsWrapper be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 240 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.quicklinks.ActionListStats defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 61 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.quicklinks.dao.impl.QuickLinksDAOJpaImpl.getInitiatedDocumentTypesList(String) invokes substring(0), which returns the original value | STYLE | DMI_USELESS_SUBSTRING | 96 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
A prepared statement is generated from a nonconstant String at org.kuali.rice.kew.quicklinks.dao.impl.QuickLinksDAOOjbImpl$1.doInPersistenceBroker(PersistenceBroker) | SECURITY | SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING | 62 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.quicklinks.dao.impl.QuickLinksDAOOjbImpl$2.doInPersistenceBroker(PersistenceBroker) invokes substring(0), which returns the original value | STYLE | DMI_USELESS_SUBSTRING | 154 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.resourceloader.CoreResourceLoader.useRemoteEmailServices() invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 104 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.role.XPathQualifierResolver$ResolverConfig be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 227 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method new org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 155 | Medium |
Comparison of String parameter using == or != in org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue.setRouteStatus(String, boolean) | BAD_PRACTICE | ES_COMPARING_PARAMETER_STRING_WITH_EQ | 692 | High |
Method org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue.getCurrentRouteLevelName() concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 302 | Medium |
Method org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue.applyDocumentUpdate(DocumentUpdate) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 822 | Medium |
Method org.kuali.rice.kew.routeheader.DocumentRouteHeaderValue.from(Document) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 1209 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOJpaImpl.findPendingByResponsibilityIds(Set) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 213 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl.findByDocTypeAndAppId(String, String) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 394 | Medium |
Method org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl.findByDocTypeAndAppId(String, String) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 388 | Medium |
org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl.findByDocTypeAndAppId(String, String) may fail to close PreparedStatement | BAD_PRACTICE | ODR_OPEN_DATABASE_RESOURCE | 388 | Medium |
Method org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl.findPendingByResponsibilityIds(Set) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 212 | Medium |
Method org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl.findPendingByResponsibilityIds(Set) passes a nonconstant String to an execute method on an SQL statement | SECURITY | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 224 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.routeheader.dao.impl.DocumentRouteHeaderDAOOjbImpl$1.doInPersistenceBroker(PersistenceBroker) might ignore java.sql.SQLException | BAD_PRACTICE | DE_MIGHT_IGNORE | 132 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to principal in org.kuali.rice.kew.routeheader.service.impl.WorkflowDocumentServiceImpl.takeMassActions(String, List) | STYLE | DLS_DEAD_LOCAL_STORE | 451 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to applicationId in org.kuali.rice.kew.routelog.web.RouteLogAction.populateRouteLogFutureRequests(RouteLogForm, DocumentRouteHeaderValue) | STYLE | DLS_DEAD_LOCAL_STORE | 213 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to actionRequests in org.kuali.rice.kew.rule.FlexRM.getActionRequests(DocumentRouteHeaderValue, RouteNode, RouteNodeInstance, String) | STYLE | DLS_DEAD_LOCAL_STORE | 205 | Medium |
Private method org.kuali.rice.kew.rule.FlexRM.makeActionRequests(ActionRequestFactory, RouteContext, Rule, DocumentRouteHeaderValue, ActionRequestValue, RuleDelegation) is never called | PERFORMANCE | UPM_UNCALLED_PRIVATE_METHOD | 244 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.GroupRuleResponsibility doesn't override RuleResponsibilityBo.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 27 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.KRAMetaRuleEngine.getStatements() may expose internal representation by returning KRAMetaRuleEngine.statements | MALICIOUS_CODE | EI_EXPOSE_REP | 69 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.PersonRuleResponsibility doesn't override RuleResponsibilityBo.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 26 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method new org.kuali.rice.kew.rule.RuleBaseValues() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 108 | Medium |
Method org.kuali.rice.kew.rule.RuleBaseValues.addRuleResponsibility(RuleResponsibilityBo) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 277 | Medium |
Call to equals() comparing different types in org.kuali.rice.kew.rule.RuleBaseValues.getResponsibility(Long) | CORRECTNESS | EC_UNRELATED_TYPES | 361 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.RuleExpressionDef defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 102 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.RuleExtensionBo defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 179 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.RuleExtensionValue defines equals and uses Object.hashCode() | BAD_PRACTICE | HE_EQUALS_USE_HASHCODE | 117 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of ruleRoutingElement at line 172 of value previously dereferenced in org.kuali.rice.kew.rule.RuleRoutingAttribute.parseDocContent(DocumentContent) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 172 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to documentContent in org.kuali.rice.kew.rule.TemplateRuleSelector.selectRules(RouteContext, DocumentRouteHeaderValue, RouteNodeInstance, String, Timestamp) | STYLE | DLS_DEAD_LOCAL_STORE | 95 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.bo.RuleTemplateAttributeBo defines compareTo(RuleTemplateAttributeBo) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 96 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.bo.RuleTemplateBo.DEFAULT_OPTION_KEYS should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 70 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.dao.impl.RuleDAOJpaImpl.fetchAllRules(boolean) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 125 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.dao.impl.RuleDAOOjbImpl.fetchAllRules(boolean) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 125 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.rice.kew.rule.service.impl.RuleServiceInternalImpl.validate2(RuleBaseValues, RuleDelegationBo, List), since all RuntimeException are instances of RuntimeException | STYLE | BC_VACUOUS_INSTANCEOF | 627 | Medium |
Method org.kuali.rice.kew.rule.service.impl.RuleServiceInternalImpl.createNewRuleVersion(RuleBaseValues, String) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 1059 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.rule.service.impl.RuleServiceInternalImpl$RuleDelegationSorter.compare(Object, Object) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 931 | Medium |
Should org.kuali.rice.kew.rule.service.impl.RuleServiceInternalImpl$RuleDelegationSorter be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 926 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.rule.web.RoutingReportAction.calculateRoute(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 145 | Medium |
Method org.kuali.rice.kew.rule.web.RoutingReportAction.populateActionRequestsWithRouteLevelInformationAndIterateMagicCounter(RouteNode, List, long) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 290 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.rule.web.RoutingReportAction$RouteReportRuleTemplateContainer be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 273 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to o in org.kuali.rice.kew.rule.web.WebRuleResponsibility.injectWebMembers() | STYLE | DLS_DEAD_LOCAL_STORE | 147 | Medium |
org.kuali.rice.kew.rule.web.WebRuleResponsibility doesn't override org.kuali.rice.kew.rule.RuleResponsibilityBo.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 52 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.rule.web.WebRuleResponsibility$DelegationRulesProxy is serializable and an inner class | BAD_PRACTICE | SE_INNER_CLASS | 456 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.rule.web.WebRuleUtils.transformFieldConversions(List, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 314 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of map at line 507 of value previously dereferenced in org.kuali.rice.kew.rule.xmlrouting.StandardGenericXMLRuleAttribute.getDocContent() | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 507 | Medium |
Method org.kuali.rice.kew.rule.xmlrouting.StandardGenericXMLRuleAttribute.getDocContent() concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 498 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.service.impl.KEWModuleService.getExternalizableBusinessObjectInquiryUrl(Class, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 175 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.DocumentsRoutedReport(Stats, Date, Date) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 94 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumActiveItemsReport(Stats) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 58 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumInitiatedDocsByDocTypeReport(Stats) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 152 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumUsersReport(Stats) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 127 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumberOfDocTypesReport(Stats) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 74 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.DocumentsRoutedReport(Stats, Date, Date) may fail to clean up java.sql.ResultSet | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 89 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.DocumentsRoutedReport(Stats, Date, Date) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 86 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumActiveItemsReport(Stats) may fail to clean up java.sql.ResultSet | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 55 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumActiveItemsReport(Stats) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 54 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumInitiatedDocsByDocTypeReport(Stats) may fail to clean up java.sql.ResultSet | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 147 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumInitiatedDocsByDocTypeReport(Stats) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 139 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumUsersReport(Stats) may fail to clean up java.sql.ResultSet | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 124 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumUsersReport(Stats) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 123 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumberOfDocTypesReport(Stats) may fail to clean up java.sql.ResultSet | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 71 | Medium |
Method org.kuali.rice.kew.stats.dao.impl.StatsDAOOjbImpl.NumberOfDocTypesReport(Stats) may fail to clean up java.sql.Statement | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 70 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.stats.web.StatsForm.getBeginningDate() may expose internal representation by returning StatsForm.beginningDate | MALICIOUS_CODE | EI_EXPOSE_REP | 247 | Medium |
org.kuali.rice.kew.stats.web.StatsForm.getEndingDate() may expose internal representation by returning StatsForm.endingDate | MALICIOUS_CODE | EI_EXPOSE_REP | 255 | Medium |
org.kuali.rice.kew.stats.web.StatsForm.setBeginningDate(Date) may expose internal representation by storing an externally mutable object into StatsForm.beginningDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 251 | Medium |
org.kuali.rice.kew.stats.web.StatsForm.setEndingDate(Date) may expose internal representation by storing an externally mutable object into StatsForm.endingDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 259 | Medium |
Class org.kuali.rice.kew.stats.web.StatsForm defines non-transient non-serializable instance field stats | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.superuser.web.SuperUserAction.actionRequestApprove(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 221 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.superuser.web.SuperUserForm.getActionRequestRunPostProcessorCheck() may expose internal representation by returning SuperUserForm.actionRequestRunPostProcessorCheck | MALICIOUS_CODE | EI_EXPOSE_REP | 252 | Medium |
org.kuali.rice.kew.superuser.web.SuperUserForm.setActionRequestRunPostProcessorCheck(String[]) may expose internal representation by storing an externally mutable object into SuperUserForm.actionRequestRunPostProcessorCheck | MALICIOUS_CODE | EI_EXPOSE_REP2 | 255 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.useroptions.UserOptions defines compareTo(Object) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 116 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Redundant nullcheck of o, which is known to be non-null in org.kuali.rice.kew.useroptions.UserOptionsId.equals(Object) | STYLE | RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE | 46 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.util.Utilities$PrioritySorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 105 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.util.Utilities$RouteLogActionRequestSorter implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 128 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.web.FilterMapping defines compareTo(FilterMapping) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 356 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.rice.kew.web.UserLoginFilter.filterConfig | PERFORMANCE | URF_UNREAD_FIELD | 71 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.AbstractTransformationFilter$CurrentElement be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 143 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.xml.DocumentTypeXmlParser.checkForOrphanedRouteNodes(Node, Node) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 954 | Medium |
Method org.kuali.rice.kew.xml.DocumentTypeXmlParser.parseAllDocumentTypes(Document) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 233 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.DocumentTypeXmlParser$DocTypeNode be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 1480 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.DocumentTypeXmlParser$RoutePathContext be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 1454 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to kimTypeAttributes in org.kuali.rice.kew.xml.GroupXmlParser.parseGroup(Element) | STYLE | DLS_DEAD_LOCAL_STORE | 146 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.xml.RuleTemplateXmlParser.parseRuleTemplateAttribute(Element, RuleTemplateBo) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 487 | Medium |
Method org.kuali.rice.kew.xml.RuleTemplateXmlParser.updateRuleDefaults(Element, RuleTemplateBo) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 298 | Medium |
Load of known null value in org.kuali.rice.kew.xml.RuleTemplateXmlParser.updateRuleDefaults(Element, RuleTemplateBo) | STYLE | NP_LOAD_OF_KNOWN_NULL_VALUE | 285 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to delegations in org.kuali.rice.kew.xml.RuleXmlParser.parseResponsibility(Element, RuleBaseValues) | STYLE | DLS_DEAD_LOCAL_STORE | 378 | Medium |
Method org.kuali.rice.kew.xml.RuleXmlParser.setDefaultRuleValues(RuleBaseValues) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 342 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.xml.UserXmlParser.constructEntity(Element) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 138 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kew.xml.export.DocumentTypeXmlExporter$DocumentTypeParentComparator.getDepth(DocumentType) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 469 | Medium |
Should org.kuali.rice.kew.xml.export.DocumentTypeXmlExporter$DocumentTypeParentComparator be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 454 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.export.DocumentTypeXmlExporter$SplitJoinContext be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 478 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kew.xml.export.GroupXmlExporter.exportGroup(Element, Group) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 87 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Redundant nullcheck of defaultActionOption, which is known to be non-null in org.kuali.rice.kew.xml.export.RuleTemplateXmlExporter.exportDefaults(Element, RuleTemplateBo) | STYLE | RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE | 113 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.xstream.XStreamSafeEvaluator$SimpleNodeList be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 253 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kew.xml.xstream.XStreamSafeEvaluator$XPathSegment be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 227 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The field org.kuali.rice.kim.bo.ui.PersonDocumentRole.attributeEntry is transient but isn't set by deserialization | BAD_PRACTICE | SE_TRANSIENT_FIELD_NOT_RESTORED | Medium | |
The field org.kuali.rice.kim.bo.ui.PersonDocumentRole.definitions is transient but isn't set by deserialization | BAD_PRACTICE | SE_TRANSIENT_FIELD_NOT_RESTORED | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.rice.kim.document.GenericPermissionMaintainable.prepareBusinessObject(BusinessObject), since all org.kuali.rice.kim.impl.permission.GenericPermissionBo are instances of org.kuali.rice.krad.bo.PersistableBusinessObject | STYLE | BC_VACUOUS_INSTANCEOF | 138 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kim.document.IdentityManagementKimDocument is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 55 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.document.rule.IdentityManagementPersonDocumentRule.checkUnassignableRoles(IdentityManagementPersonDocument) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 186 | Medium |
Method org.kuali.rice.kim.document.rule.IdentityManagementPersonDocumentRule.checkUnpopulatableGroups(IdentityManagementPersonDocument) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 204 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.impl.responsibility.ResponsibilityInquirableImpl.buildInquirableLink(Object, String, Inquiry) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 63 | Medium |
org.kuali.rice.kim.impl.responsibility.ResponsibilityInquirableImpl is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 41 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.impl.responsibility.ResponsibilityLookupableHelperServiceImpl.getMemberSearchResults(Map, boolean) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 103 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kim.impl.type.KimTypeAttributesHelper is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 46 | Medium |
Unwritten field: org.kuali.rice.kim.impl.type.KimTypeAttributesHelper.attributes | CORRECTNESS | UWF_UNWRITTEN_FIELD | 54 | Medium |
Method org.kuali.rice.kim.impl.type.KimTypeAttributesHelper.getAttributeValue(Map, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 109 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kim.impl.type.KimTypeQualifierResolver.typeServices isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 62 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.inquiry.PermissionInquirableImpl.buildInquirableLink(Object, String, Inquiry) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 68 | Medium |
org.kuali.rice.kim.inquiry.PermissionInquirableImpl is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 48 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.kim.lookup.KimDocumentRoleMemberLookupableHelperServiceImpl.getSearchResultsHelper(Map, boolean) | CORRECTNESS | EC_UNRELATED_TYPES | 65 | High |
Call to equals() comparing different types in org.kuali.rice.kim.lookup.KimDocumentRoleMemberLookupableHelperServiceImpl.getSearchResultsHelper(Map, boolean) | CORRECTNESS | EC_UNRELATED_TYPES | 65 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.lookup.PermissionLookupableHelperServiceImpl.getMemberSearchResults(Map, boolean) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 104 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.rice.kim.lookup.PersonLookupableHelperServiceImpl defines non-transient non-serializable instance field title | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.lookup.RoleLookupableHelperServiceImpl.getSearchResultsHelper(Map, boolean) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 241 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.lookup.RoleMemberLookupableHelperServiceImpl.getActualSizeIfTruncated(List) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 300 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to document in org.kuali.rice.kim.rules.ui.PersonDocumentDelegationMemberRule.processAddPersonDelegationMember(AddPersonDelegationMemberEvent) | STYLE | DLS_DEAD_LOCAL_STORE | 42 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.service.impl.KimModuleService.getUrlParameters(String, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 309 | Medium |
Method org.kuali.rice.kim.service.impl.KimModuleService.toQuery(Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 209 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to origRole in org.kuali.rice.kim.service.impl.UiDocumentServiceImpl.saveRole(IdentityManagementRoleDocument) | STYLE | DLS_DEAD_LOCAL_STORE | 2035 | High |
Dead store to pndMember in org.kuali.rice.kim.service.impl.UiDocumentServiceImpl.loadGroupMembers(IdentityManagementGroupDocument, List) | STYLE | DLS_DEAD_LOCAL_STORE | 2558 | Medium |
Dead store to pndGroupQualifier in org.kuali.rice.kim.service.impl.UiDocumentServiceImpl.loadGroupQualifiers(IdentityManagementGroupDocument, Map) | STYLE | DLS_DEAD_LOCAL_STORE | 2585 | Medium |
Method org.kuali.rice.kim.service.impl.UiDocumentServiceImpl.toQuery(Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 2841 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.kim.service.impl.UiDocumentServiceImpl$GroupMemberNameComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 2544 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kim.web.struts.action.IdentityManagementPersonDocumentAction.addEmpInfo(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 209 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method call in org.kuali.rice.kim.web.struts.action.IdentityManagementRoleDocumentAction.addResponsibility(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) passes null for nonnull parameter of org.kuali.rice.kim.document.IdentityManagementRoleDocument.addResponsibility(KimDocumentRoleResponsibility) | CORRECTNESS | NP_NULL_PARAM_DEREF | 269 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kns.service.impl.BusinessObjectAuthorizationServiceImpl.getButtonFieldPermissionDetails(Object, String) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 624 | Medium |
Unused field: org.kuali.rice.kns.service.impl.BusinessObjectAuthorizationServiceImpl.dataDictionaryService | PERFORMANCE | UUF_UNUSED_FIELD | Medium | |
Unused field: org.kuali.rice.kns.service.impl.BusinessObjectAuthorizationServiceImpl.documentHelperService | PERFORMANCE | UUF_UNUSED_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.kns.service.impl.BusinessObjectMetaDataServiceImpl.getNestedBOClass(BusinessObject, String) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 361 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name org.kuali.rice.kns.service.impl.BusinessObjectSerializerServiceImpl shadows the simple name of the superclass org.kuali.rice.krad.service.impl.BusinessObjectSerializerServiceImpl | BAD_PRACTICE | NM_SAME_SIMPLE_NAME_AS_SUPERCLASS | 30 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name org.kuali.rice.kns.service.impl.DataDictionaryServiceImpl shadows the simple name of the superclass org.kuali.rice.krad.service.impl.DataDictionaryServiceImpl | BAD_PRACTICE | NM_SAME_SIMPLE_NAME_AS_SUPERCLASS | 32 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name org.kuali.rice.kns.service.impl.DictionaryValidationServiceImpl shadows the simple name of the superclass org.kuali.rice.krad.service.impl.DictionaryValidationServiceImpl | BAD_PRACTICE | NM_SAME_SIMPLE_NAME_AS_SUPERCLASS | 43 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to subItems in org.kuali.rice.kns.service.impl.MaintenanceDocumentDictionaryServiceImpl.getMaintainableItem(String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 400 | Medium |
org.kuali.rice.kns.service.impl.MaintenanceDocumentDictionaryServiceImpl.LOG isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 50 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.rice.kns.web.struts.action.KualiActionServlet defines non-transient non-serializable instance field serverConfigOverride | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.rice.kns.web.struts.action.KualiActionServlet$KualiActionServletConfig be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 114 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unused field: org.kuali.rice.krad.dao.impl.BusinessObjectDaoJpa.ojbCollectionHelper | PERFORMANCE | UUF_UNUSED_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.dao.impl.LookupDaoJpa.executeSearch(Class, Criteria, boolean) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 218 | Medium |
Comparison of String parameter using == or != in org.kuali.rice.krad.dao.impl.LookupDaoJpa.addLogicalOperatorCriteria(String, String, Class, boolean, Criteria, String) | BAD_PRACTICE | ES_COMPARING_PARAMETER_STRING_WITH_EQ | 597 | Medium |
Potentially dangerous use of non-short-circuit logic in org.kuali.rice.krad.dao.impl.LookupDaoJpa.findObjectByMap(Object, Map) | STYLE | NS_DANGEROUS_NON_SHORT_CIRCUIT | 367 | High |
Method org.kuali.rice.krad.dao.impl.LookupDaoJpa.addInactivateableFromToCurrentCriteria(Object, String, Criteria, Map) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 550 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoJpa.findCountByMap(Object, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 79 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoJpa.findObjectByMap(Object, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 363 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoJpa.getCollectionCriteriaFromMap(PersistableBusinessObject, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 140 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to searchResults in org.kuali.rice.krad.dao.impl.LookupDaoOjb.executeSearch(Class, Criteria, boolean) | STYLE | DLS_DEAD_LOCAL_STORE | 163 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoOjb.executeSearch(Class, Criteria, boolean) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 170 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoOjb.findCountByMap(Object, Map) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 272 | Medium |
Potentially dangerous use of non-short-circuit logic in org.kuali.rice.krad.dao.impl.LookupDaoOjb.findObjectByMap(Object, Map) | STYLE | NS_DANGEROUS_NON_SHORT_CIRCUIT | 292 | High |
Method org.kuali.rice.krad.dao.impl.LookupDaoOjb.findCountByMap(Object, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 239 | Medium |
Method org.kuali.rice.krad.dao.impl.LookupDaoOjb.getCollectionCriteriaFromMap(BusinessObject, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 92 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of note at line 60 of value previously dereferenced in org.kuali.rice.krad.dao.impl.NoteDaoOjb.save(Note) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 56 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.krad.dao.impl.PersistenceDaoJpa.getField(Class, String) might ignore java.lang.Exception | BAD_PRACTICE | DE_MIGHT_IGNORE | 111 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to START_INDEX in org.kuali.rice.krad.dao.proxy.DocumentHeaderDaoProxy.getDao(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 28 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to START_INDEX in org.kuali.rice.krad.dao.proxy.MaintenanceDocumentDaoProxy.getDao(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 32 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to START_INDEX in org.kuali.rice.krad.dao.proxy.NoteDaoProxy.getDao(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 32 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to START_INDEX in org.kuali.rice.krad.dao.proxy.PersistedLookupMetadataDaoProxy.getDao(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 32 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to entityManager in org.kuali.rice.krad.dao.proxy.PersistenceDaoProxy.getDao(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 59 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.krad.document.authorization.MaintenanceDocumentAuthorizerBase.documentDictionaryService should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.service.impl.AttachmentServiceImpl.createAttachment(PersistableBusinessObject, String, String, int, InputStream, String) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 91 | Medium |
org.kuali.rice.krad.service.impl.AttachmentServiceImpl.deleteAttachmentContents(Attachment) ignores exceptional return value of java.io.File.delete() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 165 | Medium |
org.kuali.rice.krad.service.impl.AttachmentServiceImpl.deletePendingAttachmentsModifiedBefore(long) ignores exceptional return value of java.io.File.delete() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 246 | Medium |
org.kuali.rice.krad.service.impl.AttachmentServiceImpl.moveAttachmentFromPending(Attachment, String) ignores exceptional return value of java.io.File.delete() | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 154 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to maintenanceDocumentEntry in org.kuali.rice.krad.service.impl.BusinessObjectSerializerServiceImpl.getPropertySerizabilityEvaluator(Object) | STYLE | DLS_DEAD_LOCAL_STORE | 60 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible doublecheck on org.kuali.rice.krad.service.impl.BusinessObjectServiceImpl.illegalBusinessObjectsForSaveInitialized in org.kuali.rice.krad.service.impl.BusinessObjectServiceImpl.isBusinessObjectAllowedForSave(PersistableBusinessObject) | MT_CORRECTNESS | DC_DOUBLECHECK | 123 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.service.impl.DataObjectMetaDataServiceImpl.getDataObjectIdentifierString(Object) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 425 | Medium |
Method org.kuali.rice.krad.service.impl.DataObjectMetaDataServiceImpl.equalsByPrimaryKeys(Object, Object) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 134 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.service.impl.DictionaryValidationServiceImpl.validateBusinessObjectsFromDescriptors(Object, PropertyDescriptor[], int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 398 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Inconsistent synchronization of org.kuali.rice.krad.service.impl.DocumentServiceImpl.workflowDocumentService; locked 66% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 649 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.service.impl.InactivateableFromToServiceImpl.buildGroupByValueString(BusinessObject, List) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 195 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.rice.krad.service.impl.InactivationBlockingDisplayServiceImpl.persistenceService | PERFORMANCE | URF_UNREAD_FIELD | 135 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of exceptionIncident in org.kuali.rice.krad.service.impl.KualiExceptionIncidentServiceImpl.report(KualiExceptionIncident) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 190 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to user in org.kuali.rice.krad.service.impl.MaintenanceDocumentServiceImpl.clearUnauthorizedNewFields(MaintenanceDocument) | STYLE | DLS_DEAD_LOCAL_STORE | 299 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to classModifiers in org.kuali.rice.krad.service.impl.ModuleServiceBase.getExternalizableBusinessObjectImplementation(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 330 | Medium |
Method org.kuali.rice.krad.service.impl.ModuleServiceBase.getExternalizableBusinessObjectLookupUrl(Class, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 230 | Medium |
Method org.kuali.rice.krad.service.impl.ModuleServiceBase.getUrlParameters(String, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 189 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.rice.krad.service.impl.PersistenceStructureServiceJpaImpl.listCollectionObjectTypes(PersistableBusinessObject), since all org.kuali.rice.krad.bo.PersistableBusinessObject are instances of org.kuali.rice.krad.bo.PersistableBusinessObject | STYLE | BC_VACUOUS_INSTANCEOF | 606 | Medium |
instanceof will always return true in org.kuali.rice.krad.service.impl.PersistenceStructureServiceJpaImpl.listReferenceObjectFields(PersistableBusinessObject), since all org.kuali.rice.krad.bo.PersistableBusinessObject are instances of org.kuali.rice.krad.bo.PersistableBusinessObject | STYLE | BC_VACUOUS_INSTANCEOF | 621 | Medium |
org.kuali.rice.krad.service.impl.PersistenceStructureServiceJpaImpl.referenceConversionMap isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 58 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.rice.krad.service.impl.PersistenceStructureServiceOjbImpl.listCollectionObjectTypes(PersistableBusinessObject), since all org.kuali.rice.krad.bo.PersistableBusinessObject are instances of org.kuali.rice.krad.bo.PersistableBusinessObject | STYLE | BC_VACUOUS_INSTANCEOF | 647 | Medium |
instanceof will always return true in org.kuali.rice.krad.service.impl.PersistenceStructureServiceOjbImpl.listReferenceObjectFields(PersistableBusinessObject), since all org.kuali.rice.krad.bo.PersistableBusinessObject are instances of org.kuali.rice.krad.bo.PersistableBusinessObject | STYLE | BC_VACUOUS_INSTANCEOF | 662 | Medium |
org.kuali.rice.krad.service.impl.PersistenceStructureServiceOjbImpl.referenceConversionMap isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 62 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Call to equals() comparing different types in org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doActionTaken(ActionTakenEvent) | CORRECTNESS | EC_UNRELATED_TYPES | 144 | High |
org.kuali.rice.kew.api.action.ActionType is incompatible with expected argument type String in org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doActionTaken(ActionTakenEvent) | CORRECTNESS | GC_UNRELATED_TYPES | 145 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to caseInsensitive in org.kuali.rice.krad.service.impl.PredicateFactoryLookup.createFromComplexCriteriaValue(Class, String, String, String) | STYLE | DLS_DEAD_LOCAL_STORE | 198 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to key in org.kuali.rice.krad.service.impl.SessionDocumentServiceImpl.setDocumentForm(DocumentFormBase, UserSession, String) | STYLE | DLS_DEAD_LOCAL_STORE | 170 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of replacers in org.kuali.rice.krad.uif.service.impl.ExpressionEvaluatorServiceImpl.evaluatePropertyReplacers(Object, Object, Map) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 162 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to boEntry in org.kuali.rice.krad.workflow.attribute.DataDictionarySearchableAttribute.createFieldRowsForBusinessObject(Class) | STYLE | DLS_DEAD_LOCAL_STORE | 434 | Medium |
Method org.kuali.rice.krad.workflow.attribute.DataDictionarySearchableAttribute.validateDocumentAttributeCriteria(ExtensionDefinition, DocumentSearchCriteria) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 223 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to theEnd in org.kuali.rice.krad.workflow.attribute.KualiXmlAttributeHelper.getXPathTerms(Element) | STYLE | DLS_DEAD_LOCAL_STORE | 431 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.workflow.service.impl.WorkflowAttributePropertyResolutionServiceImpl.copyQualifications(Map, Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 187 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.krad.workflow.service.impl.WorkflowAttributePropertyResolutionServiceImpl$RoutingAttributeTracker.checkPoint() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 500 | Medium |
Should org.kuali.rice.krad.workflow.service.impl.WorkflowAttributePropertyResolutionServiceImpl$RoutingAttributeTracker be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 477 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.impl.registry.ServiceDescriptorBo is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 60 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name org.kuali.rice.ksb.messaging.HttpException shadows the simple name of the superclass org.apache.commons.httpclient.HttpException | BAD_PRACTICE | NM_SAME_SIMPLE_NAME_AS_SUPERCLASS | 26 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.messaging.MessageServiceInvoker.run() invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 76 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.ksb.messaging.dao.impl.MessageQueueDAOOjbImpl.findByValues(Map, int) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 85 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.messaging.exceptionhandling.DefaultMessageExceptionHandler.getImmediateExceptionRouting() invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 142 | Medium |
Method org.kuali.rice.ksb.messaging.exceptionhandling.DefaultMessageExceptionHandler.requeue(Throwable, PersistedMessageBO) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 92 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.messaging.quartz.KSBSchedulerFactoryBean.afterPropertiesSet() invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 67 | Medium |
Unused field: org.kuali.rice.ksb.messaging.quartz.KSBSchedulerFactoryBean.transactionManager | PERFORMANCE | UUF_UNUSED_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.messaging.serviceconnectors.HttpInvokerConnector.configureDefaultHttpClientParams(HttpParams) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 139 | Medium |
Method org.kuali.rice.ksb.messaging.serviceconnectors.HttpInvokerConnector.configureDefaultHttpClientParams(HttpParams) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 132 | Medium |
Method org.kuali.rice.ksb.messaging.serviceconnectors.HttpInvokerConnector.initializeHttpClientParams() makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 118 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.rice.ksb.messaging.servlet.KSBDispatcherServlet defines non-transient non-serializable instance field cxfServletController | BAD_PRACTICE | SE_BAD_FIELD | Medium | |
Class org.kuali.rice.ksb.messaging.servlet.KSBDispatcherServlet defines non-transient non-serializable instance field httpInvokerHandler | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.messaging.threadpool.PriorityBlockingQueuePersistedMessageComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 32 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.ksb.messaging.web.MessageQueueAction.quickRequeueMessage(PersistedMessageBO) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 204 | Medium |
Call to equals() comparing different types in org.kuali.rice.ksb.messaging.web.MessageQueueAction.establishRequiredState(HttpServletRequest, ActionForm) | CORRECTNESS | EC_UNRELATED_TYPES | 337 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.rice.ksb.messaging.web.ThreadPoolForm defines non-transient non-serializable instance field threadPool | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new org.kuali.rice.ksb.security.SignatureVerifyingInputStream(byte[], Signature, InputStream) may expose internal representation by storing an externally mutable object into SignatureVerifyingInputStream.digitalSignature | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.rice.ksb.security.admin.KeyStoreEntryDataContainer.getCreateDate() may expose internal representation by returning KeyStoreEntryDataContainer.createDate | MALICIOUS_CODE | EI_EXPOSE_REP | 82 | Medium |
new org.kuali.rice.ksb.security.admin.KeyStoreEntryDataContainer(String, Date) may expose internal representation by storing an externally mutable object into KeyStoreEntryDataContainer.createDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 50 | Medium |
org.kuali.rice.ksb.security.admin.KeyStoreEntryDataContainer.setCreateDate(Date) may expose internal representation by storing an externally mutable object into KeyStoreEntryDataContainer.createDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 89 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.rice.ksb.security.admin.service.impl.JavaSecurityManagementServiceImpl.CLIENT_CERT_EXPIRATION_DAYS; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | 57 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to form in org.kuali.rice.ksb.security.admin.web.JavaSecurityManagementAction.clear(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) | STYLE | DLS_DEAD_LOCAL_STORE | 81 | High |
Dead store to form in org.kuali.rice.ksb.security.admin.web.JavaSecurityManagementAction.generateClientKeyStore(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) | STYLE | DLS_DEAD_LOCAL_STORE | 121 | High |
Dead store to data in org.kuali.rice.ksb.security.admin.web.JavaSecurityManagementAction.generateClientKeyStore(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) | STYLE | DLS_DEAD_LOCAL_STORE | 100 | Medium |
The parameter form to org.kuali.rice.ksb.security.admin.web.JavaSecurityManagementAction.clear(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) is dead upon entry but overwritten | CORRECTNESS | IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN | 81 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.rice.ksb.util.KSBConstants.<static initializer>() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 71 | Medium |