FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 1.3.9

Threshold is medium

Effort is min

Summary

Classes Bugs Errors Missing Classes
174 63 0 4

Files

Class Bugs
org.kuali.student.common.validator.BeanConstraintDataProvider 1
org.kuali.student.common.validator.DefaultValidatorImpl 1
org.kuali.student.common.validator.ValidatorFactory 1
org.kuali.student.common.validator.ValidatorUtils 1
org.kuali.student.common.validator.old.BeanConstraintDataProvider 1
org.kuali.student.common.validator.old.Validator 2
org.kuali.student.common.validator.old.ValidatorUtils 1
org.kuali.student.core.assembly.data.Data 1
org.kuali.student.core.assembly.data.Data$DataValue 1
org.kuali.student.core.assembly.data.Data$DateValue 3
org.kuali.student.core.assembly.data.Data$DoubleValue 1
org.kuali.student.core.assembly.data.Data$FloatValue 1
org.kuali.student.core.assembly.data.Data$IntegerValue 1
org.kuali.student.core.assembly.data.Data$LongValue 1
org.kuali.student.core.assembly.data.Data$ShortValue 1
org.kuali.student.core.assembly.data.Data$TimeValue 1
org.kuali.student.core.assembly.data.Data$TimestampValue 1
org.kuali.student.core.assembly.dictionary.MetadataFormatter 1
org.kuali.student.core.assembly.dictionary.MetadataServiceImpl 3
org.kuali.student.core.assembly.dictionary.MetadataServiceImpl$RecursionCounter 1
org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl 1
org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl$RecursionCounter 1
org.kuali.student.core.assembly.transform.TransformationManager 2
org.kuali.student.core.dictionary.service.impl.DictionaryCreator 2
org.kuali.student.core.dictionary.service.impl.DictionaryFormatter$FieldDefinitionNameComparator 1
org.kuali.student.core.dictionary.service.impl.DictionaryServiceImpl 3
org.kuali.student.core.dictionary.service.impl.DictionaryTesterHelper 1
org.kuali.student.core.dictionary.service.impl.DictionaryValidator 1
org.kuali.student.core.dictionary.service.impl.old.DictionaryServiceSpringImpl 3
org.kuali.student.core.entity.BaseType 4
org.kuali.student.core.entity.Meta 4
org.kuali.student.core.entity.Version 4
org.kuali.student.core.search.service.impl.CrossSearchManager 3
org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator 5
org.kuali.student.core.search.service.impl.SearchConfigFormatter 1
org.kuali.student.core.search.service.impl.SearchConfigValidator 2

org.kuali.student.common.validator.BeanConstraintDataProvider

Bug Category Details Line Priority
Method org.kuali.student.common.validator.BeanConstraintDataProvider.initialize(Object) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 57 Medium

org.kuali.student.common.validator.DefaultValidatorImpl

Bug Category Details Line Priority
Redundant comparison of non-null value to null in org.kuali.student.common.validator.DefaultValidatorImpl.validateField(FieldDefinition, ObjectStructureDefinition, ConstraintDataProvider, Stack) STYLE RCN_REDUNDANT_COMPARISON_OF_NULL_AND_NONNULL_VALUE 219 Medium

org.kuali.student.common.validator.ValidatorFactory

Bug Category Details Line Priority
Inconsistent synchronization of org.kuali.student.common.validator.ValidatorFactory.customValidators; locked 60% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 42 Medium

org.kuali.student.common.validator.ValidatorUtils

Bug Category Details Line Priority
org.kuali.student.common.validator.ValidatorUtils.getBoolean(Object) has Boolean return type and returns explicit null BAD_PRACTICE NP_BOOLEAN_RETURN_NULL 179 Medium

org.kuali.student.common.validator.old.BeanConstraintDataProvider

Bug Category Details Line Priority
Method org.kuali.student.common.validator.old.BeanConstraintDataProvider.initialize(Object) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 48 Medium

org.kuali.student.common.validator.old.Validator

Bug Category Details Line Priority
Redundant comparison of non-null value to null in org.kuali.student.common.validator.old.Validator.validateField(Field, Type, State, ObjectStructure, ConstraintDataProvider, Stack) STYLE RCN_REDUNDANT_COMPARISON_OF_NULL_AND_NONNULL_VALUE 265 Medium
Nullcheck of value at line 452 of value previously dereferenced in org.kuali.student.common.validator.old.Validator.processConstraint(List, ConstraintSelector, Field, Type, State, ObjectStructure, Object, ConstraintDataProvider, Validator$BaseConstraintBean, Stack) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 435 Medium

org.kuali.student.common.validator.old.ValidatorUtils

Bug Category Details Line Priority
org.kuali.student.common.validator.old.ValidatorUtils.getBoolean(Object) has Boolean return type and returns explicit null BAD_PRACTICE NP_BOOLEAN_RETURN_NULL 176 Medium

org.kuali.student.core.assembly.data.Data

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data is Serializable; consider declaring a serialVersionUID BAD_PRACTICE SE_NO_SERIALVERSIONID 30-1112 Medium

org.kuali.student.core.assembly.data.Data$DataValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$DataValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 93 Medium

org.kuali.student.core.assembly.data.Data$DateValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$DateValue.get() may expose internal representation by returning Data$DateValue.value MALICIOUS_CODE EI_EXPOSE_REP 114 Medium
new org.kuali.student.core.assembly.data.Data$DateValue(Date) may expose internal representation by storing an externally mutable object into Data$DateValue.value MALICIOUS_CODE EI_EXPOSE_REP2 109 Medium
org.kuali.student.core.assembly.data.Data$DateValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 125 Medium

org.kuali.student.core.assembly.data.Data$DoubleValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$DoubleValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 157 Medium

org.kuali.student.core.assembly.data.Data$FloatValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$FloatValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 189 Medium

org.kuali.student.core.assembly.data.Data$IntegerValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$IntegerValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 277 Medium

org.kuali.student.core.assembly.data.Data$LongValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$LongValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 316 Medium

org.kuali.student.core.assembly.data.Data$ShortValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$ShortValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 362 Medium

org.kuali.student.core.assembly.data.Data$TimeValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$TimeValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 515 Medium

org.kuali.student.core.assembly.data.Data$TimestampValue

Bug Category Details Line Priority
org.kuali.student.core.assembly.data.Data$TimestampValue.toString() may return null BAD_PRACTICE NP_TOSTRING_COULD_RETURN_NULL 483 Medium

org.kuali.student.core.assembly.dictionary.MetadataFormatter

Bug Category Details Line Priority
Suspicious comparison of Integer references in org.kuali.student.core.assembly.dictionary.MetadataFormatter.calcLength(Metadata) CORRECTNESS RC_REF_COMPARISON 594 High

org.kuali.student.core.assembly.dictionary.MetadataServiceImpl

Bug Category Details Line Priority
Load of known null value in org.kuali.student.core.assembly.dictionary.MetadataServiceImpl.processCaseConstraint(ConstraintMetadata, CaseConstraint, String, String, String) STYLE NP_LOAD_OF_KNOWN_NULL_VALUE 370 Medium
Possible null pointer dereference of paramType on path that might be infeasible in org.kuali.student.core.assembly.dictionary.MetadataServiceImpl.matchesType(String, String) STYLE NP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE 562 Medium
Method org.kuali.student.core.assembly.dictionary.MetadataServiceImpl.addLookupstoMetadata(String, Metadata, String) concatenates strings using + in a loop PERFORMANCE SBSC_USE_STRINGBUFFER_CONCATENATION 593 Medium

org.kuali.student.core.assembly.dictionary.MetadataServiceImpl$RecursionCounter

Bug Category Details Line Priority
Method org.kuali.student.core.assembly.dictionary.MetadataServiceImpl$RecursionCounter.increment(String) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead PERFORMANCE DM_NUMBER_CTOR 65 Medium

org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl

Bug Category Details Line Priority
Dead store to value in org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl.convertDefaultValue(Data$DataType, Object) STYLE DLS_DEAD_LOCAL_STORE 437 High

org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl$RecursionCounter

Bug Category Details Line Priority
Method org.kuali.student.core.assembly.dictionary.old.MetadataServiceImpl$RecursionCounter.increment(String) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead PERFORMANCE DM_NUMBER_CTOR 73 Medium

org.kuali.student.core.assembly.transform.TransformationManager

Bug Category Details Line Priority
Redundant nullcheck of metadata which is known to be null in org.kuali.student.core.assembly.transform.TransformationManager.transform(Data, Class) STYLE RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE 59 Medium
Redundant nullcheck of metadata which is known to be null in org.kuali.student.core.assembly.transform.TransformationManager.transform(Data, Class, Map) STYLE RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE 79 Medium

org.kuali.student.core.dictionary.service.impl.DictionaryCreator

Bug Category Details Line Priority
org.kuali.student.core.dictionary.service.impl.DictionaryCreator.execute(Class, String) may fail to close stream BAD_PRACTICE OS_OPEN_STREAM 68 Medium

org.kuali.student.core.dictionary.service.impl.DictionaryFormatter$FieldDefinitionNameComparator

Bug Category Details Line Priority
org.kuali.student.core.dictionary.service.impl.DictionaryFormatter$FieldDefinitionNameComparator implements Comparator but not Serializable BAD_PRACTICE SE_COMPARATOR_SHOULD_BE_SERIALIZABLE 220-225 Medium

org.kuali.student.core.dictionary.service.impl.DictionaryServiceImpl

Bug Category Details Line Priority
org.kuali.student.core.dictionary.service.impl.DictionaryServiceImpl.getDictionaryContext() may expose internal representation by returning DictionaryServiceImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP 58 Medium
new org.kuali.student.core.dictionary.service.impl.DictionaryServiceImpl(String[]) may expose internal representation by storing an externally mutable object into DictionaryServiceImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium
org.kuali.student.core.dictionary.service.impl.DictionaryServiceImpl.setDictionaryContext(String[]) may expose internal representation by storing an externally mutable object into DictionaryServiceImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium

org.kuali.student.core.dictionary.service.impl.DictionaryTesterHelper

Bug Category Details Line Priority
Double assignment of os in org.kuali.student.core.dictionary.service.impl.DictionaryTesterHelper.doTestOnClass(String, ApplicationContext) STYLE SA_LOCAL_DOUBLE_ASSIGNMENT 137 Medium

org.kuali.student.core.dictionary.service.impl.DictionaryValidator

Bug Category Details Line Priority
Dead store to pattern in org.kuali.student.core.dictionary.service.impl.DictionaryValidator.validateValidChars(FieldDefinition, ValidCharsConstraint) STYLE DLS_DEAD_LOCAL_STORE 311 Medium

org.kuali.student.core.dictionary.service.impl.old.DictionaryServiceSpringImpl

Bug Category Details Line Priority
org.kuali.student.core.dictionary.service.impl.old.DictionaryServiceSpringImpl.getDictionaryContext() may expose internal representation by returning DictionaryServiceSpringImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP 89 Medium
new org.kuali.student.core.dictionary.service.impl.old.DictionaryServiceSpringImpl(String[]) may expose internal representation by storing an externally mutable object into DictionaryServiceSpringImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
org.kuali.student.core.dictionary.service.impl.old.DictionaryServiceSpringImpl.setDictionaryContext(String[]) may expose internal representation by storing an externally mutable object into DictionaryServiceSpringImpl.dictionaryContext MALICIOUS_CODE EI_EXPOSE_REP2 93 Medium

org.kuali.student.core.entity.BaseType

Bug Category Details Line Priority
org.kuali.student.core.entity.BaseType.getEffectiveDate() may expose internal representation by returning BaseType.effectiveDate MALICIOUS_CODE EI_EXPOSE_REP 39 Medium
org.kuali.student.core.entity.BaseType.getExpirationDate() may expose internal representation by returning BaseType.expirationDate MALICIOUS_CODE EI_EXPOSE_REP 47 Medium
org.kuali.student.core.entity.BaseType.setEffectiveDate(Date) may expose internal representation by storing an externally mutable object into BaseType.effectiveDate MALICIOUS_CODE EI_EXPOSE_REP2 43 Medium
org.kuali.student.core.entity.BaseType.setExpirationDate(Date) may expose internal representation by storing an externally mutable object into BaseType.expirationDate MALICIOUS_CODE EI_EXPOSE_REP2 51 Medium

org.kuali.student.core.entity.Meta

Bug Category Details Line Priority
org.kuali.student.core.entity.Meta.getCreateTime() may expose internal representation by returning Meta.createTime MALICIOUS_CODE EI_EXPOSE_REP 53 Medium
org.kuali.student.core.entity.Meta.getUpdateTime() may expose internal representation by returning Meta.updateTime MALICIOUS_CODE EI_EXPOSE_REP 69 Medium
org.kuali.student.core.entity.Meta.setCreateTime(Date) may expose internal representation by storing an externally mutable object into Meta.createTime MALICIOUS_CODE EI_EXPOSE_REP2 57 Medium
org.kuali.student.core.entity.Meta.setUpdateTime(Date) may expose internal representation by storing an externally mutable object into Meta.updateTime MALICIOUS_CODE EI_EXPOSE_REP2 73 Medium

org.kuali.student.core.entity.Version

Bug Category Details Line Priority
org.kuali.student.core.entity.Version.getCurrentVersionEnd() may expose internal representation by returning Version.currentVersionEnd MALICIOUS_CODE EI_EXPOSE_REP 41 Medium
org.kuali.student.core.entity.Version.getCurrentVersionStart() may expose internal representation by returning Version.currentVersionStart MALICIOUS_CODE EI_EXPOSE_REP 33 Medium
org.kuali.student.core.entity.Version.setCurrentVersionEnd(Date) may expose internal representation by storing an externally mutable object into Version.currentVersionEnd MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium
org.kuali.student.core.entity.Version.setCurrentVersionStart(Date) may expose internal representation by storing an externally mutable object into Version.currentVersionStart MALICIOUS_CODE EI_EXPOSE_REP2 37 Medium

org.kuali.student.core.search.service.impl.CrossSearchManager

Bug Category Details Line Priority
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager.meetsCriteria(Map, CrossSearchTypeInfo, JoinCriteriaInfo) passes null for nonnull parameter of compare(CrossSearchManager$DataType, String, String, JoinComparisonInfo$ComparisonType) CORRECTNESS NP_NULL_PARAM_DEREF 321 Medium
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager.meetsCriteria(Map, CrossSearchTypeInfo, JoinCriteriaInfo) passes null for nonnull parameter of compare(CrossSearchManager$DataType, String, String, JoinComparisonInfo$ComparisonType) CORRECTNESS NP_NULL_PARAM_DEREF 321 Medium
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager.meetsCriteria(Map, CrossSearchTypeInfo, JoinCriteriaInfo) passes null for nonnull parameter of compare(CrossSearchManager$DataType, String, String, JoinComparisonInfo$ComparisonType) CORRECTNESS NP_NULL_PARAM_DEREF 321 Medium

org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator

Bug Category Details Line Priority
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator.compare(SearchResultRow, SearchResultRow) passes null for nonnull parameter of Integer.parseInt(String) CORRECTNESS NP_NULL_PARAM_DEREF 194 Medium
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator.compare(SearchResultRow, SearchResultRow) passes null for nonnull parameter of Integer.parseInt(String) CORRECTNESS NP_NULL_PARAM_DEREF 195 Medium
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator.compare(SearchResultRow, SearchResultRow) passes null for nonnull parameter of java.text.DateFormat.parse(String) CORRECTNESS NP_NULL_PARAM_DEREF 206 Medium
Method call in org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator.compare(SearchResultRow, SearchResultRow) passes null for nonnull parameter of java.text.DateFormat.parse(String) CORRECTNESS NP_NULL_PARAM_DEREF 207 Medium
org.kuali.student.core.search.service.impl.CrossSearchManager$SearchResultRowComparator implements Comparator but not Serializable BAD_PRACTICE SE_COMPARATOR_SHOULD_BE_SERIALIZABLE 161-225 Medium

org.kuali.student.core.search.service.impl.SearchConfigFormatter

Bug Category Details Line Priority
Unused field: org.kuali.student.core.search.service.impl.SearchConfigFormatter.os PERFORMANCE UUF_UNUSED_FIELD Not available Medium

org.kuali.student.core.search.service.impl.SearchConfigValidator

Bug Category Details Line Priority
Unread field: org.kuali.student.core.search.service.impl.SearchConfigValidator.queryMap PERFORMANCE URF_UNREAD_FIELD 20 Medium
Unread field: org.kuali.student.core.search.service.impl.SearchConfigValidator.searchInfoTypeMap PERFORMANCE URF_UNREAD_FIELD 19 Medium