/home/tomcat/temp/ks-1.1-perf/ks-common/ks-common-ui/target/classes/home/tomcat/.m2/repository/org/apache/maven/reporting/maven-reporting-impl/2.0/maven-reporting-impl-2.0.jar/home/tomcat/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.1/plexus-utils-1.5.1.jar/home/tomcat/.m2/repository/commons-validator/commons-validator/1.1.4/commons-validator-1.1.4.jar/home/tomcat/.m2/repository/oro/oro/2.0.7/oro-2.0.7.jar/home/tomcat/.m2/repository/doxia/doxia-core/1.0-alpha-4/doxia-core-1.0-alpha-4.jar/home/tomcat/.m2/repository/org/apache/maven/shared/maven-doxia-tools/1.0/maven-doxia-tools-1.0.jar/home/tomcat/.m2/repository/commons-io/commons-io/1.4/commons-io-1.4.jar/home/tomcat/.m2/repository/org/apache/maven/doxia/doxia-decoration-model/1.0-alpha-11/doxia-decoration-model-1.0-alpha-11.jar/home/tomcat/.m2/repository/org/codehaus/plexus/plexus-i18n/1.0-beta-7/plexus-i18n-1.0-beta-7.jar/home/tomcat/.m2/repository/com/google/code/findbugs/findbugs-ant/1.3.9/findbugs-ant-1.3.9.jar/home/tomcat/.m2/repository/com/google/code/findbugs/findbugs/1.3.9/findbugs-1.3.9.jar/home/tomcat/.m2/repository/com/google/code/findbugs/bcel/1.3.9/bcel-1.3.9.jar/home/tomcat/.m2/repository/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar/home/tomcat/.m2/repository/com/google/code/findbugs/jFormatString/1.3.9/jFormatString-1.3.9.jar/home/tomcat/.m2/repository/com/google/code/findbugs/annotations/1.3.9/annotations-1.3.9.jar/home/tomcat/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar/home/tomcat/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar/home/tomcat/.m2/repository/jaxen/jaxen/1.1.1/jaxen-1.1.1.jar/home/tomcat/.m2/repository/jdom/jdom/1.0/jdom-1.0.jar/home/tomcat/.m2/repository/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2.jar/home/tomcat/.m2/repository/xom/xom/1.0/xom-1.0.jar/home/tomcat/.m2/repository/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2.jar/home/tomcat/.m2/repository/xalan/xalan/2.6.0/xalan-2.6.0.jar/home/tomcat/.m2/repository/com/ibm/icu/icu4j/2.6.1/icu4j-2.6.1.jar/home/tomcat/.m2/repository/asm/asm/3.1/asm-3.1.jar/home/tomcat/.m2/repository/asm/asm-analysis/3.1/asm-analysis-3.1.jar/home/tomcat/.m2/repository/asm/asm-tree/3.1/asm-tree-3.1.jar/home/tomcat/.m2/repository/asm/asm-commons/3.1/asm-commons-3.1.jar/home/tomcat/.m2/repository/asm/asm-util/3.1/asm-util-3.1.jar/home/tomcat/.m2/repository/asm/asm-xml/3.1/asm-xml-3.1.jar/home/tomcat/.m2/repository/commons-lang/commons-lang/2.4/commons-lang-2.4.jar/home/tomcat/.m2/repository/jgoodies/plastic/1.2.0/plastic-1.2.0.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/gmaven-mojo/1.0-rc-3/gmaven-mojo-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/runtime/gmaven-runtime-api/1.0-rc-3/gmaven-runtime-api-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/feature/gmaven-feature-api/1.0-rc-3/gmaven-feature-api-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/runtime/gmaven-runtime-default/1.0-rc-3/gmaven-runtime-default-1.0-rc-3.jar/home/tomcat/.m2/repository/org/slf4j/slf4j-api/1.5.0/slf4j-api-1.5.0.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/runtime/gmaven-runtime-1.5/1.0-rc-3/gmaven-runtime-1.5-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/feature/gmaven-feature-support/1.0-rc-3/gmaven-feature-support-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/runtime/gmaven-runtime-support/1.0-rc-3/gmaven-runtime-support-1.0-rc-3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/maven/gmaven-common/1.0-rc-3/gmaven-common-1.0-rc-3.jar/home/tomcat/.m2/repository/com/thoughtworks/qdox/qdox/1.6.3/qdox-1.6.3.jar/home/tomcat/.m2/repository/org/codehaus/groovy/groovy-all-minimal/1.5.6/groovy-all-minimal-1.5.6.jar/home/tomcat/.m2/repository/org/apache/ant/ant/1.7.1/ant-1.7.1.jar/home/tomcat/.m2/repository/org/apache/ant/ant-launcher/1.7.1/ant-launcher-1.7.1.jar/home/tomcat/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar/home/tomcat/.m2/repository/org/codehaus/plexus/plexus-resources/1.0-alpha-4/plexus-resources-1.0-alpha-4.jar/opt/java/apache-maven-2.2.1/lib/maven-2.2.1-uber.jar/home/tomcat/.m2/repository/com/google/gwt/gwt-dev/2.0.4/gwt-dev-2.0.4.jar/home/tomcat/.m2/repository/com/google/gwt/gwt-user/2.0.4/gwt-user-2.0.4.jar/home/tomcat/.m2/repository/com/google/gwt/gwt-servlet/2.0.4/gwt-servlet-2.0.4.jar/home/tomcat/.m2/repository/com/google/gwt/gwt-visualization/1.0/gwt-visualization-1.0.jar/home/tomcat/.m2/repository/com/google/gwt/gwt-incubator/2.0.1/gwt-incubator-2.0.1.jar/home/tomcat/.m2/repository/com/google/code/gwtx/gwtx/1.5.3/gwtx-1.5.3.jar/home/tomcat/.m2/repository/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1-sources.jar/home/tomcat/.m2/repository/javax/xml/stream/stax-api/1.0-2/stax-api-1.0-2.jar/home/tomcat/.m2/repository/javax/activation/activation/1.1/activation-1.1.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-util/1.1.0-SNAPSHOT/ks-common-util-1.1.0-SNAPSHOT-sources.jar/home/tomcat/.m2/repository/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar/home/tomcat/.m2/repository/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar/home/tomcat/.m2/repository/net/sf/ehcache/ehcache/1.4.1/ehcache-1.4.1.jar/home/tomcat/.m2/repository/net/sf/jsr107cache/jsr107cache/1.0/jsr107cache-1.0.jar/home/tomcat/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar/home/tomcat/.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar/home/tomcat/.m2/repository/commons-collections/commons-collections/3.2/commons-collections-3.2.jar/home/tomcat/.m2/repository/org/slf4j/slf4j-api/1.6.0/slf4j-api-1.6.0.jar/home/tomcat/.m2/repository/org/slf4j/slf4j-log4j12/1.6.0/slf4j-log4j12-1.6.0.jar/home/tomcat/.m2/repository/log4j/log4j/1.2.14/log4j-1.2.14.jar/home/tomcat/.m2/repository/org/springframework/spring-core/2.5.6/spring-core-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-aop/2.5.6/spring-aop-2.5.6.jar/home/tomcat/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar/home/tomcat/.m2/repository/org/springframework/spring-beans/2.5.6/spring-beans-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-orm/2.5.6/spring-orm-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-context/2.5.6/spring-context-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-tx/2.5.6/spring-tx-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-webmvc/2.5.6/spring-webmvc-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-context-support/2.5.6/spring-context-support-2.5.6.jar/home/tomcat/.m2/repository/org/springframework/spring-web/2.5.6/spring-web-2.5.6.jar/home/tomcat/.m2/repository/org/aspectj/aspectjrt/1.5.4/aspectjrt-1.5.4.jar/home/tomcat/.m2/repository/org/apache/velocity/velocity-tools/2.0/velocity-tools-2.0.jar/home/tomcat/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar/home/tomcat/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar/home/tomcat/.m2/repository/commons-chain/commons-chain/1.1/commons-chain-1.1.jar/home/tomcat/.m2/repository/commons-validator/commons-validator/1.3.1/commons-validator-1.3.1.jar/home/tomcat/.m2/repository/oro/oro/2.0.8/oro-2.0.8.jar/home/tomcat/.m2/repository/sslext/sslext/1.2-0/sslext-1.2-0.jar/home/tomcat/.m2/repository/org/apache/struts/struts-core/1.3.8/struts-core-1.3.8.jar/home/tomcat/.m2/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar/home/tomcat/.m2/repository/org/apache/struts/struts-taglib/1.3.8/struts-taglib-1.3.8.jar/home/tomcat/.m2/repository/org/apache/struts/struts-tiles/1.3.8/struts-tiles-1.3.8.jar/home/tomcat/.m2/repository/org/apache/velocity/velocity/1.6.4/velocity-1.6.4.jar/home/tomcat/.m2/repository/commons-lang/commons-lang/2.3/commons-lang-2.3.jar/home/tomcat/.m2/repository/logkit/logkit/2.0/logkit-2.0.jar/home/tomcat/.m2/repository/org/antlr/antlr-runtime/3.1.1/antlr-runtime-3.1.1.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-util/1.1.0-SNAPSHOT/ks-common-util-1.1.0-SNAPSHOT.jar/home/tomcat/.m2/repository/commons-codec/commons-codec/20041127.091804/commons-codec-20041127.091804.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-impl/1.1.0-SNAPSHOT/ks-common-impl-1.1.0-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-api/1.1.0-SNAPSHOT/ks-common-api-1.1.0-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/rice/rice-api/1.0.3/rice-api-1.0.3.jar/home/tomcat/.m2/repository/org/apache/geronimo/specs/geronimo-ws-metadata_2.0_spec/1.1.2/geronimo-ws-metadata_2.0_spec-1.1.2.jar/home/tomcat/.m2/repository/org/apache/geronimo/specs/geronimo-annotation_1.0_spec/1.1.1/geronimo-annotation_1.0_spec-1.1.1.jar/home/tomcat/.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar/home/tomcat/temp/ks-1.1-perf/ks-common/ks-common-ui/src/main/java/home/tomcat/temp/ks-1.1-perf/ks-common/ks-common-ui/targetClass defines compareTo(...) and uses Object.equals()org.kuali.student.common.ui.client.application.ViewContext defines compareTo(ViewContext) and uses Object.equals()At ViewContext.java:[lines 31-99]In class org.kuali.student.common.ui.client.application.ViewContextIn method org.kuali.student.common.ui.client.application.ViewContext.compareTo(ViewContext)At ViewContext.java:[lines 82-86]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.HasDataValueBinding.INSTANCE isn't final but should beAt HasDataValueBinding.java:[lines 49-166]In class org.kuali.student.common.ui.client.configurable.mvc.binding.HasDataValueBindingIn HasDataValueBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.HasDataValueBinding.INSTANCEAt HasDataValueBinding.java:[line 51]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.INSTANCE isn't final but should beAt HasTextBinding.java:[lines 28-135]In class org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBindingIn HasTextBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.INSTANCEAt HasTextBinding.java:[line 29]Exception is caught when Exception is not thrownException is caught when Exception is not thrown in org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.setModelValue(HasText, DataModel, String)At HasTextBinding.java:[lines 28-135]In class org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBindingIn method org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.setModelValue(HasText, DataModel, String)At HasTextBinding.java:[line 104]Another occurrence at HasTextBinding.java:[line 108]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.HasValueBinding.INSTANCE isn't final but should beAt HasValueBinding.java:[lines 28-87]In class org.kuali.student.common.ui.client.configurable.mvc.binding.HasValueBindingIn HasValueBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.HasValueBinding.INSTANCEAt HasValueBinding.java:[line 30]Method concatenates strings using + in a loopMethod org.kuali.student.common.ui.client.configurable.mvc.binding.ListToTextBinding.getStringList(DataModel, String) concatenates strings using + in a loopAt ListToTextBinding.java:[lines 12-73]In class org.kuali.student.common.ui.client.configurable.mvc.binding.ListToTextBindingIn method org.kuali.student.common.ui.client.configurable.mvc.binding.ListToTextBinding.getStringList(DataModel, String)At ListToTextBinding.java:[line 51]Suspicious reference comparisonSuspicious comparison of Integer references in org.kuali.student.common.ui.client.configurable.mvc.binding.ModelWidgetBindingSupport.nullsafeEquals(Data, Data)At ModelWidgetBindingSupport.java:[lines 32-128]In class org.kuali.student.common.ui.client.configurable.mvc.binding.ModelWidgetBindingSupportIn method org.kuali.student.common.ui.client.configurable.mvc.binding.ModelWidgetBindingSupport.nullsafeEquals(Data, Data)At Integer.java:[lines 37-1194]Actual type IntegerReturn value of org.kuali.student.core.assembly.data.Data.size()At ModelWidgetBindingSupport.java:[line 95]Another occurrence at ModelWidgetBindingSupport.java:[line 97]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityCompositeBinding.INSTANCE isn't final but should beAt MultiplicityCompositeBinding.java:[lines 37-113]In class org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityCompositeBindingIn MultiplicityCompositeBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityCompositeBinding.INSTANCEAt MultiplicityCompositeBinding.java:[line 38]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityGroupItemBinding.INSTANCE isn't final but should beAt MultiplicityGroupItemBinding.java:[lines 33-102]In class org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityGroupItemBindingIn MultiplicityGroupItemBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityGroupItemBinding.INSTANCEAt MultiplicityGroupItemBinding.java:[line 34]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityItemBinding.INSTANCE isn't final but should beAt MultiplicityItemBinding.java:[lines 37-107]In class org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityItemBindingIn MultiplicityItemBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityItemBinding.INSTANCEAt MultiplicityItemBinding.java:[line 38]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.RichTextBinding.INSTANCE isn't final but should beAt RichTextBinding.java:[lines 22-77]In class org.kuali.student.common.ui.client.configurable.mvc.binding.RichTextBindingIn RichTextBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.RichTextBinding.INSTANCEAt RichTextBinding.java:[line 23]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding.INSTANCE isn't final but should beAt SelectItemWidgetBinding.java:[lines 33-124]In class org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBindingIn SelectItemWidgetBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding.INSTANCEAt SelectItemWidgetBinding.java:[line 35]Unchecked/unconfirmed castUnchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding$1.exec(Widget)At SelectItemWidgetBinding.java:[lines 99-116]In class org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding$1In method org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding$1.exec(Widget)At Widget.java:[lines 35-422]Actual type com.google.gwt.user.client.ui.WidgetAt KSSelectItemWidgetAbstract.java:[lines 40-176]Expected org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstractValue loaded from widgetAt SelectItemWidgetBinding.java:[line 103]Another occurrence at SelectItemWidgetBinding.java:[line 107]Another occurrence at SelectItemWidgetBinding.java:[line 112]Dead store to local variableDead store to layout in org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addTool(ToolView)At TabbedSectionLayout.java:[lines 51-553]In class org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayoutIn method org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addTool(ToolView)Local variable named layoutAt TabbedSectionLayout.java:[line 393]Class defines field that masks a superclass fieldField TabbedSectionLayout.defaultView masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.LayoutControllerAt TabbedSectionLayout.java:[lines 51-553]In class org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayoutIn TabbedSectionLayout.javaMasking field org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.defaultViewIn LayoutController.javaMasked field org.kuali.student.common.ui.client.configurable.mvc.LayoutController.defaultViewAt TabbedSectionLayout.java:[lines 51-553]Nullcheck of value previously dereferencedNullcheck of section at line 341 of value previously dereferenced in org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addSection(String[], SectionView)At TabbedSectionLayout.java:[lines 51-553]In class org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayoutIn method org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addSection(String[], SectionView)Value loaded from sectionAt TabbedSectionLayout.java:[line 328]Redundant null check at TabbedSectionLayout.java:[line 341]Method invokes inefficient Number constructor; use static valueOf insteadMethod org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) insteadAt MultiplicityComposite.java:[lines 44-161]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityCompositeIn method org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem()Called method new Integer(int)Should call Integer.valueOf(int) insteadAt MultiplicityComposite.java:[line 87]Another occurrence at MultiplicityComposite.java:[line 92]Possible null pointer dereferencePossible null pointer dereference of item in org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem()At MultiplicityComposite.java:[lines 44-161]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityCompositeIn method org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem()Value loaded from itemDereferenced at MultiplicityComposite.java:[line 95]Known null at MultiplicityComposite.java:[line 90]Unread fieldUnread field: org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityConfiguration.fieldMapAt MultiplicityConfiguration.java:[lines 51-379]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityConfigurationIn MultiplicityConfiguration.javaField org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityConfiguration.fieldMapAt MultiplicityConfiguration.java:[line 64]Method invokes inefficient Number constructor; use static valueOf insteadMethod org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup.createItem() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) insteadAt MultiplicityGroup.java:[lines 61-478]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroupIn method org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup.createItem()Called method new Integer(int)Should call Integer.valueOf(int) insteadAt MultiplicityGroup.java:[line 168]Another occurrence at MultiplicityGroup.java:[line 173]Should be a static inner classShould org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$ConditionChoices be a _static_ inner class?At MultiplicityGroup.java:[lines 481-607]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$ConditionChoicesAt MultiplicityGroup.java:[lines 481-607]Should be a static inner classShould org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$SwappableFieldsHelper be a _static_ inner class?At MultiplicityGroup.java:[lines 610-687]In class org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$SwappableFieldsHelperAt MultiplicityGroup.java:[lines 610-687]Unread fieldUnread field: org.kuali.student.common.ui.client.configurable.mvc.sections.MultiplicityHeader.titleAt MultiplicityHeader.java:[lines 28-64]In class org.kuali.student.common.ui.client.configurable.mvc.sections.MultiplicityHeaderIn MultiplicityHeader.javaField org.kuali.student.common.ui.client.configurable.mvc.sections.MultiplicityHeader.titleAt MultiplicityHeader.java:[line 36]Field isn't final but should beorg.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.INSTANCE isn't final but should beAt SectionBinding.java:[lines 34-158]In class org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBindingIn SectionBinding.javaField org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.INSTANCEAt SectionBinding.java:[line 35]Inefficient use of keySet iterator instead of entrySet iteratorMethod org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.setModelValue(Section, DataModel, String) makes inefficient use of keySet iterator instead of entrySet iteratorAt SectionBinding.java:[lines 34-158]In class org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBindingIn method org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.setModelValue(Section, DataModel, String)At SectionBinding.java:[line 103]Field isn't final but should beorg.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.links isn't final but should beAt BreadcrumbManager.java:[lines 17-143]In class org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManagerIn BreadcrumbManager.javaField org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.linksAt BreadcrumbManager.java:[line 19]Nullcheck of value previously dereferencedNullcheck of name at line 73 of value previously dereferenced in org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String)At BreadcrumbManager.java:[lines 17-143]In class org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManagerIn method org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String)Value loaded from nameReturn value of java.util.List.get(int)At BreadcrumbManager.java:[line 73]Redundant null check at BreadcrumbManager.java:[line 87]Method concatenates strings using + in a loopMethod org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String) concatenates strings using + in a loopAt BreadcrumbManager.java:[lines 17-143]In class org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManagerIn method org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String)At BreadcrumbManager.java:[line 57]Field isn't final but should beorg.kuali.student.common.ui.client.mvc.history.HistoryManager.VIEW_ATR isn't final but should beAt HistoryManager.java:[lines 35-220]In class org.kuali.student.common.ui.client.mvc.history.HistoryManagerIn HistoryManager.javaField org.kuali.student.common.ui.client.mvc.history.HistoryManager.VIEW_ATRAt HistoryManager.java:[line 37]Method concatenates strings using + in a loopMethod org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext) concatenates strings using + in a loopAt HistoryManager.java:[lines 35-220]In class org.kuali.student.common.ui.client.mvc.history.HistoryManagerIn method org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext)At HistoryManager.java:[line 216]Inefficient use of keySet iterator instead of entrySet iteratorMethod org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext) makes inefficient use of keySet iterator instead of entrySet iteratorAt HistoryManager.java:[lines 35-220]In class org.kuali.student.common.ui.client.mvc.history.HistoryManagerIn method org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext)At HistoryManager.java:[line 215]Method concatenates strings using + in a loopMethod org.kuali.student.common.ui.client.util.PrintUtils.print(UIObject) concatenates strings using + in a loopAt PrintUtils.java:[lines 8-25]In class org.kuali.student.common.ui.client.util.PrintUtilsIn method org.kuali.student.common.ui.client.util.PrintUtils.print(UIObject)At PrintUtils.java:[line 18]Uninitialized read of field in constructorUninitialized read of desc in new org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem(String, String, ClickHandler)At KSActionItemList.java:[lines 44-87]In class org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItemIn method new org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem(String, String, ClickHandler)In KSActionItemList.javaField org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem.descAt KSActionItemList.java:[line 50]Uninitialized read of field in constructorUninitialized read of link in new org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem(String, String, ClickHandler)At KSActionItemList.java:[lines 44-87]In class org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItemIn method new org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem(String, String, ClickHandler)In KSActionItemList.javaField org.kuali.student.common.ui.client.widgets.KSActionItemList$ActionItem.linkAt KSActionItemList.java:[line 49]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.StylishDropDown.mouseOverAt StylishDropDown.java:[lines 40-261]In class org.kuali.student.common.ui.client.widgets.StylishDropDownIn StylishDropDown.javaField org.kuali.student.common.ui.client.widgets.StylishDropDown.mouseOverAt StylishDropDown.java:[line 53]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.containers.KSWrapper.appUrlAt KSWrapper.java:[lines 58-313]In class org.kuali.student.common.ui.client.widgets.containers.KSWrapperIn KSWrapper.javaField org.kuali.student.common.ui.client.widgets.containers.KSWrapper.appUrlAt KSWrapper.java:[line 85]Nullcheck of value previously dereferencedNullcheck of result at line 122 of value previously dereferenced in org.kuali.student.common.ui.client.widgets.containers.KSWrapper$1.onSuccess(Map)At KSWrapper.java:[lines 114-135]In class org.kuali.student.common.ui.client.widgets.containers.KSWrapper$1In method org.kuali.student.common.ui.client.widgets.containers.KSWrapper$1.onSuccess(Map)Value loaded from resultAt KSWrapper.java:[line 121]Redundant null check at KSWrapper.java:[line 122]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.dialog.ButtonMessageDialog.titleAt ButtonMessageDialog.java:[lines 15-61]In class org.kuali.student.common.ui.client.widgets.dialog.ButtonMessageDialogIn ButtonMessageDialog.javaField org.kuali.student.common.ui.client.widgets.dialog.ButtonMessageDialog.titleAt ButtonMessageDialog.java:[line 16]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.dialog.ConfirmationDialog.titleAt ConfirmationDialog.java:[lines 31-99]In class org.kuali.student.common.ui.client.widgets.dialog.ConfirmationDialogIn ConfirmationDialog.javaField org.kuali.student.common.ui.client.widgets.dialog.ConfirmationDialog.titleAt ConfirmationDialog.java:[line 38]Unused fieldUnused field: org.kuali.student.common.ui.client.widgets.field.layout.element.FieldElement.marginAt FieldElement.java:[lines 39-442]In class org.kuali.student.common.ui.client.widgets.field.layout.element.FieldElementIn FieldElement.javaField org.kuali.student.common.ui.client.widgets.field.layout.element.FieldElement.marginIn FieldElement.javaUnread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.Header.updateableAt Header.java:[lines 27-70]In class org.kuali.student.common.ui.client.widgets.field.layout.layouts.HeaderIn Header.javaField org.kuali.student.common.ui.client.widgets.field.layout.layouts.Header.updateableAt Header.java:[line 35]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.HorizontalLayout.fieldAreaAt HorizontalLayout.java:[lines 14-125]In class org.kuali.student.common.ui.client.widgets.field.layout.layouts.HorizontalLayoutIn HorizontalLayout.javaField org.kuali.student.common.ui.client.widgets.field.layout.layouts.HorizontalLayout.fieldAreaAt HorizontalLayout.java:[line 16]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.buttonPanelAt TableFieldLayout.java:[lines 18-115]In class org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayoutIn TableFieldLayout.javaField org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.buttonPanelAt TableFieldLayout.java:[line 19]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.topAt TableFieldLayout.java:[lines 18-115]In class org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayoutIn TableFieldLayout.javaField org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.topAt TableFieldLayout.java:[line 18]Possible null pointer dereferencePossible null pointer dereference of w in org.kuali.student.common.ui.client.widgets.headers.KSDocumentHeader.addWidget(Widget)At KSDocumentHeader.java:[lines 19-81]In class org.kuali.student.common.ui.client.widgets.headers.KSDocumentHeaderIn method org.kuali.student.common.ui.client.widgets.headers.KSDocumentHeader.addWidget(Widget)Value loaded from wDereferenced at KSDocumentHeader.java:[line 72]Known null at KSDocumentHeader.java:[line 64]May expose internal representation by incorporating reference to mutable objectorg.kuali.student.common.ui.client.widgets.impl.KSDatePickerImpl.setValue(Date) may expose internal representation by storing an externally mutable object into KSDatePickerImpl.selectedDateAt KSDatePickerImpl.java:[lines 48-277]In class org.kuali.student.common.ui.client.widgets.impl.KSDatePickerImplIn method org.kuali.student.common.ui.client.widgets.impl.KSDatePickerImpl.setValue(Date)In KSDatePickerImpl.javaField org.kuali.student.common.ui.client.widgets.impl.KSDatePickerImpl.selectedDateLocal variable named dateAt KSDatePickerImpl.java:[line 223]Field isn't final but should beorg.kuali.student.common.ui.client.widgets.list.KSSelectedList.itemDataHelper isn't final but should beAt KSSelectedList.java:[lines 57-410]In class org.kuali.student.common.ui.client.widgets.list.KSSelectedListIn KSSelectedList.javaField org.kuali.student.common.ui.client.widgets.list.KSSelectedList.itemDataHelperAt KSSelectedList.java:[line 73]Unchecked/unconfirmed castUnchecked/unconfirmed cast from org.kuali.student.common.ui.client.mvc.ModelChangeEvent to org.kuali.student.common.ui.client.mvc.CollectionModelChangeEvent in org.kuali.student.common.ui.client.widgets.list.ModelListItems$1.onModelChange(ModelChangeEvent)At ModelListItems.java:[lines 80-103]In class org.kuali.student.common.ui.client.widgets.list.ModelListItems$1In method org.kuali.student.common.ui.client.widgets.list.ModelListItems$1.onModelChange(ModelChangeEvent)At ModelChangeEvent.java:[lines 26-78]Actual type org.kuali.student.common.ui.client.mvc.ModelChangeEventAt CollectionModelChangeEvent.java:[lines 35-46]Expected org.kuali.student.common.ui.client.mvc.CollectionModelChangeEventValue loaded from evtAt ModelListItems.java:[line 82]Dead store to local variableDead store to w in org.kuali.student.common.ui.client.widgets.menus.KSListPanel.remove(int)At KSListPanel.java:[lines 36-95]In class org.kuali.student.common.ui.client.widgets.menus.KSListPanelIn method org.kuali.student.common.ui.client.widgets.menus.KSListPanel.remove(int)Local variable named wAt KSListPanel.java:[line 74]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.indentAt KSBasicMenuImpl.java:[lines 186-276]In class org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanelIn KSBasicMenuImpl.javaField org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.indentAt KSBasicMenuImpl.java:[line 196]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.itemNumAt KSBasicMenuImpl.java:[lines 186-276]In class org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanelIn KSBasicMenuImpl.javaField org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.itemNumAt KSBasicMenuImpl.java:[line 197]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.indentAt KSListMenuImpl.java:[lines 189-286]In class org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanelIn KSListMenuImpl.javaField org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.indentAt KSListMenuImpl.java:[line 201]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.itemNumAt KSListMenuImpl.java:[lines 189-286]In class org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanelIn KSListMenuImpl.javaField org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.itemNumAt KSListMenuImpl.java:[line 202]Dead store to local variableDead store to ids in org.kuali.student.common.ui.client.widgets.pagetable.GenericTableModel.setRows(List)At GenericTableModel.java:[lines 43-218]In class org.kuali.student.common.ui.client.widgets.pagetable.GenericTableModelIn method org.kuali.student.common.ui.client.widgets.pagetable.GenericTableModel.setRows(List)Local variable named idsAt GenericTableModel.java:[line 178]Method invokes inefficient Number constructor; use static valueOf insteadMethod org.kuali.student.common.ui.client.widgets.progress.BlockingTask.hashCode() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) insteadAt BlockingTask.java:[lines 19-42]In class org.kuali.student.common.ui.client.widgets.progress.BlockingTaskIn method org.kuali.student.common.ui.client.widgets.progress.BlockingTask.hashCode()Called method new Integer(int)Should call Integer.valueOf(int) insteadAt BlockingTask.java:[line 40]Unused fieldUnused field: org.kuali.student.common.ui.client.widgets.search.CollapsablePanel.buttonLabelAt CollapsablePanel.java:[lines 34-192]In class org.kuali.student.common.ui.client.widgets.search.CollapsablePanelIn CollapsablePanel.javaField org.kuali.student.common.ui.client.widgets.search.CollapsablePanel.buttonLabelIn CollapsablePanel.javaMethod uses the same code for two branchesMethod org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparator.compare(Row, Row) uses the same code for two branchesAt SearchResultsTable.java:[lines 229-250]In class org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparatorIn method org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparator.compare(Row, Row)At SearchResultsTable.java:[lines 244-245]At SearchResultsTable.java:[lines 247-248]Comparator doesn't implement Serializableorg.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparator implements Comparator but not SerializableAt SearchResultsTable.java:[lines 229-250]In class org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparatorAt SearchResultsTable.java:[lines 229-250]Method uses the same code for two branchesMethod org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparator.compare(Row, Row) uses the same code for two branchesAt SearchResultsTable.java:[lines 254-275]In class org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparatorIn method org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparator.compare(Row, Row)At SearchResultsTable.java:[lines 269-270]At SearchResultsTable.java:[lines 272-273]Comparator doesn't implement Serializableorg.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparator implements Comparator but not SerializableAt SearchResultsTable.java:[lines 254-275]In class org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparatorAt SearchResultsTable.java:[lines 254-275]Non-virtual method call passes null for nonnull parameterNon-virtual method call in org.kuali.student.common.ui.client.widgets.search.KSPicker$6.onSuccess(SearchResult) passes null for nonnull parameter of new org.kuali.student.common.ui.client.widgets.list.SearchResultListItems(List, LookupMetadata)At KSPicker.java:[lines 308-321]In class org.kuali.student.common.ui.client.widgets.search.KSPicker$6In method org.kuali.student.common.ui.client.widgets.search.KSPicker$6.onSuccess(SearchResult)Called method new org.kuali.student.common.ui.client.widgets.list.SearchResultListItems(List, LookupMetadata)At KSPicker.java:[line 315]Argument 1 is definitely null but must not be nullDead store to local variableDead store to value in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget.getDisplayValue()At KSPicker.java:[lines 341-578]In class org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidgetIn method org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget.getDisplayValue()Local variable named valueAt KSPicker.java:[line 455]Unchecked/unconfirmed castUnchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$1.exec(Widget)At KSPicker.java:[lines 391-406]In class org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$1In method org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$1.exec(Widget)At Widget.java:[lines 35-422]Actual type com.google.gwt.user.client.ui.WidgetAt KSSelectItemWidgetAbstract.java:[lines 40-176]Expected org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstractValue loaded from widgetAt KSPicker.java:[line 394]Unchecked/unconfirmed castUnchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$6.exec(Widget)At KSPicker.java:[lines 562-568]In class org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$6In method org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$6.exec(Widget)At Widget.java:[lines 35-422]Actual type com.google.gwt.user.client.ui.WidgetAt KSSelectItemWidgetAbstract.java:[lines 40-176]Expected org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstractValue loaded from widgetAt KSPicker.java:[line 564]Another occurrence at KSPicker.java:[line 566]Should be a static inner classShould org.kuali.student.common.ui.client.widgets.search.KSPicker$SelectionContainerWidget be a _static_ inner class?At KSPicker.java:[lines 583-600]In class org.kuali.student.common.ui.client.widgets.search.KSPicker$SelectionContainerWidgetAt KSPicker.java:[lines 583-600]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.contentAt LinkPanel.java:[lines 40-75]In class org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfoIn LinkPanel.javaField org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.contentAt LinkPanel.java:[line 52]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.keyAt LinkPanel.java:[lines 40-75]In class org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfoIn LinkPanel.javaField org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.keyAt LinkPanel.java:[line 51]Unread field: should this field be static?Unread field: org.kuali.student.common.ui.client.widgets.search.SearchResultsTable.PAGE_SIZE; should this field be static?At SearchResultsTable.java:[lines 44-197]In class org.kuali.student.common.ui.client.widgets.search.SearchResultsTableIn SearchResultsTable.javaField org.kuali.student.common.ui.client.widgets.search.SearchResultsTable.PAGE_SIZEAt SearchResultsTable.java:[line 46]Comparator doesn't implement Serializableorg.kuali.student.common.ui.client.widgets.table.scroll.CourseIdAscendingRowComparator implements Comparator but not SerializableAt TableDemoPanel.java:[lines 103-108]In class org.kuali.student.common.ui.client.widgets.table.scroll.CourseIdAscendingRowComparatorAt TableDemoPanel.java:[lines 103-108]Comparator doesn't implement Serializableorg.kuali.student.common.ui.client.widgets.table.scroll.CourseIdDescendingRowComparator implements Comparator but not SerializableAt TableDemoPanel.java:[lines 112-117]In class org.kuali.student.common.ui.client.widgets.table.scroll.CourseIdDescendingRowComparatorAt TableDemoPanel.java:[lines 112-117]Unused fieldUnused field: org.kuali.student.common.ui.client.widgets.table.scroll.MouseHoverFlexTable.clickHandlerAt MouseHoverFlexTable.java:[lines 12-47]In class org.kuali.student.common.ui.client.widgets.table.scroll.MouseHoverFlexTableIn MouseHoverFlexTable.javaField org.kuali.student.common.ui.client.widgets.table.scroll.MouseHoverFlexTable.clickHandlerIn MouseHoverFlexTable.javainstanceof will always return trueinstanceof will always return true in org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int), since all org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidget are instances of com.google.gwt.event.dom.client.HasChangeHandlersAt Table.java:[lines 35-298]In class org.kuali.student.common.ui.client.widgets.table.scroll.TableIn method org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int)At TableCellWidget.java:[lines 14-65]Actual type org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidgetIn HasChangeHandlers.javaExpected com.google.gwt.event.dom.client.HasChangeHandlersAt Table.java:[line 230]instanceof will always return trueinstanceof will always return true in org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int), since all org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidget are instances of com.google.gwt.event.dom.client.HasClickHandlersAt Table.java:[lines 35-298]In class org.kuali.student.common.ui.client.widgets.table.scroll.TableIn method org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int)At TableCellWidget.java:[lines 14-65]Actual type org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidgetIn HasClickHandlers.javaExpected com.google.gwt.event.dom.client.HasClickHandlersAt Table.java:[line 221]Method ignores return valueorg.kuali.student.common.ui.client.widgets.table.summary.SummaryTableSection.buildMultiplicityRows(DataModel, DataModel, SummaryTableMultiplicityFieldRow, List, int, Integer) ignores return value of String.replace(CharSequence, CharSequence)At SummaryTableSection.java:[lines 29-461]In class org.kuali.student.common.ui.client.widgets.table.summary.SummaryTableSectionIn method org.kuali.student.common.ui.client.widgets.table.summary.SummaryTableSection.buildMultiplicityRows(DataModel, DataModel, SummaryTableMultiplicityFieldRow, List, int, Integer)Called method String.replace(CharSequence, CharSequence)At SummaryTableSection.java:[line 196]Another occurrence at SummaryTableSection.java:[line 257]Non-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.DataGwtServlet defines non-transient non-serializable instance field LOGAt DataGwtServlet.java:[lines 35-86]In class org.kuali.student.common.ui.server.gwt.DataGwtServletIn DataGwtServlet.javaField org.kuali.student.common.ui.server.gwt.DataGwtServlet.LOGIn DataGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.DataGwtServlet defines non-transient non-serializable instance field dataServiceAt DataGwtServlet.java:[lines 35-86]In class org.kuali.student.common.ui.server.gwt.DataGwtServletIn DataGwtServlet.javaField org.kuali.student.common.ui.server.gwt.DataGwtServlet.dataServiceIn DataGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet defines non-transient non-serializable instance field loggerAt LogRpcGwtServlet.java:[lines 25-45]In class org.kuali.student.common.ui.server.gwt.LogRpcGwtServletIn LogRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet.loggerIn LogRpcGwtServlet.javaInefficient use of keySet iterator instead of entrySet iteratorMethod org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet.sendLog(Map, String) makes inefficient use of keySet iterator instead of entrySet iteratorAt LogRpcGwtServlet.java:[lines 25-45]In class org.kuali.student.common.ui.server.gwt.LogRpcGwtServletIn method org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet.sendLog(Map, String)At LogRpcGwtServlet.java:[line 40]Non-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.MessagesRpcGwtServlet defines non-transient non-serializable instance field serviceImplAt MessagesRpcGwtServlet.java:[lines 26-73]In class org.kuali.student.common.ui.server.gwt.MessagesRpcGwtServletIn MessagesRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.MessagesRpcGwtServlet.serviceImplIn MessagesRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.MetadataRpcGwtServlet defines non-transient non-serializable instance field serviceImplAt MetadataRpcGwtServlet.java:[lines 26-51]In class org.kuali.student.common.ui.server.gwt.MetadataRpcGwtServletIn MetadataRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.MetadataRpcGwtServlet.serviceImplIn MetadataRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet defines non-transient non-serializable instance field LOGAt SearchDispatchRpcGwtServlet.java:[lines 31-50]In class org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServletIn SearchDispatchRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet.LOGIn SearchDispatchRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet defines non-transient non-serializable instance field searchDispatcherAt SearchDispatchRpcGwtServlet.java:[lines 31-50]In class org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServletIn SearchDispatchRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet.searchDispatcherIn SearchDispatchRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.common.ui.server.gwt.ServerPropertiesRpcGwtServlet defines non-transient non-serializable instance field loggerAt ServerPropertiesRpcGwtServlet.java:[lines 35-88]In class org.kuali.student.common.ui.server.gwt.ServerPropertiesRpcGwtServletIn ServerPropertiesRpcGwtServlet.javaField org.kuali.student.common.ui.server.gwt.ServerPropertiesRpcGwtServlet.loggerIn ServerPropertiesRpcGwtServlet.javaMethod with Boolean return type returns explicit nullorg.kuali.student.common.ui.server.gwt.old.AbstractBaseDataOrchestrationRpcGwtServlet.isAuthorized(PermissionType, Map) has Boolean return type and returns explicit nullAt AbstractBaseDataOrchestrationRpcGwtServlet.java:[lines 47-193]In class org.kuali.student.common.ui.server.gwt.old.AbstractBaseDataOrchestrationRpcGwtServletIn method org.kuali.student.common.ui.server.gwt.old.AbstractBaseDataOrchestrationRpcGwtServlet.isAuthorized(PermissionType, Map)At AbstractBaseDataOrchestrationRpcGwtServlet.java:[line 124]Method concatenates strings using + in a loopMethod org.kuali.student.common.ui.theme.standard.client.CommonCssImpl.getCssString() concatenates strings using + in a loopAt CommonCssImpl.java:[lines 24-46]In class org.kuali.student.common.ui.theme.standard.client.CommonCssImplIn method org.kuali.student.common.ui.theme.standard.client.CommonCssImpl.getCssString()At CommonCssImpl.java:[line 32]DodgyMalicious code vulnerabilityBad practiceCorrectnessPerformanceMethod with Boolean return type returns explicit null
<p>
A method that returns either Boolean.TRUE, Boolean.FALSE or null is an accident waiting to happen.
This method can be invoked as though it returned a value of type boolean, and
the compiler will insert automatic unboxing of the Boolean value. If a null value is returned,
this will result in a NullPointerException.
</p>
Uninitialized read of field in constructor
<p> This constructor reads a field which has not yet been assigned a value.
This is often caused when the programmer mistakenly uses the field instead
of one of the constructor's parameters.</p>
Unread field: should this field be static?
<p> This class contains an instance final field that
is initialized to a compile-time static value.
Consider making the field static.</p>
Nullcheck of value previously dereferenced
<p> A value is checked here to see whether it is null, but this value can't
be null because it was previously dereferenced and if it were null a null pointer
exception would have occurred at the earlier dereference.
Essentially, this code and the previous dereference
disagree as to whether this value is allowed to be null. Either the check is redundant
or the previous dereference is erroneous.</p>
Field isn't final but should be
<p>
A mutable static field could be changed by malicious code or
by accident from another package.
The field could be made final to avoid
this vulnerability.</p>
Unused field
<p> This field is never used. Consider removing it from the class.</p>
Class defines compareTo(...) and uses Object.equals()
<p> This class defines a <code>compareTo(...)</code> method but inherits its
<code>equals()</code> method from <code>java.lang.Object</code>.
Generally, the value of compareTo should return zero if and only if
equals returns true. If this is violated, weird and unpredictable
failures will occur in classes such as PriorityQueue.
In Java 5 the PriorityQueue.remove method uses the compareTo method,
while in Java 6 it uses the equals method.
<p>From the JavaDoc for the compareTo method in the Comparable interface:
<blockquote>
It is strongly recommended, but not strictly required that <code>(x.compareTo(y)==0) == (x.equals(y))</code>.
Generally speaking, any class that implements the Comparable interface and violates this condition
should clearly indicate this fact. The recommended language
is "Note: this class has a natural ordering that is inconsistent with equals."
</blockquote>
May expose internal representation by incorporating reference to mutable object
<p> This code stores a reference to an externally mutable object into the
internal representation of the object.
If instances
are accessed by untrusted code, and unchecked changes to
the mutable object would compromise security or other
important properties, you will need to do something different.
Storing a copy of the object is better approach in many situations.</p>
instanceof will always return true
<p>
This instanceof test will always return true (unless the value being tested is null).
Although this is safe, make sure it isn't
an indication of some misunderstanding or some other logic error.
If you really want to test the value for being null, perhaps it would be clearer to do
better to do a null test rather than an instanceof test.
</p>
Unread field
<p> This field is never read. Consider removing it from the class.</p>
Method invokes inefficient Number constructor; use static valueOf instead
<p>
Using <code>new Integer(int)</code> is guaranteed to always result in a new object whereas
<code>Integer.valueOf(int)</code> allows caching of values to be done by the compiler, class library, or JVM.
Using of cached values avoids object allocation and the code will be faster.
</p>
<p>
Values between -128 and 127 are guaranteed to have corresponding cached instances
and using <code>valueOf</code> is approximately 3.5 times faster than using constructor.
For values outside the constant range the performance of both styles is the same.
</p>
<p>
Unless the class must be compatible with JVMs predating Java 1.5,
use either autoboxing or the <code>valueOf()</code> method when creating instances of
<code>Long</code>, <code>Integer</code>, <code>Short</code>, <code>Character</code>, and <code>Byte</code>.
</p>
Should be a static inner class
<p> This class is an inner class, but does not use its embedded reference
to the object which created it. This reference makes the instances
of the class larger, and may keep the reference to the creator object
alive longer than necessary. If possible, the class should be
made static.
</p>
Possible null pointer dereference
<p> There is a branch of statement that, <em>if executed,</em> guarantees that
a null value will be dereferenced, which
would generate a <code>NullPointerException</code> when the code is executed.
Of course, the problem might be that the branch or statement is infeasible and that
the null pointer exception can't ever be executed; deciding that is beyond the ability of FindBugs.
</p>
Dead store to local variable
<p>
This instruction assigns a value to a local variable,
but the value is not read or used in any subsequent instruction.
Often, this indicates an error, because the value computed is never
used.
</p>
<p>
Note that Sun's javac compiler often generates dead stores for
final local variables. Because FindBugs is a bytecode-based tool,
there is no easy way to eliminate these false positives.
</p>
Method uses the same code for two branches
<p>
This method uses the same code to implement two branches of a conditional branch.
Check to ensure that this isn't a coding mistake.
</p>
Unchecked/unconfirmed cast
<p>
This cast is unchecked, and not all instances of the type casted from can be cast to
the type it is being cast to. Ensure that your program logic ensures that this
cast will not fail.
</p>
Comparator doesn't implement Serializable
<p> This class implements the <code>Comparator</code> interface. You
should consider whether or not it should also implement the <code>Serializable</code>
interface. If a comparator is used to construct an ordered collection
such as a <code>TreeMap</code>, then the <code>TreeMap</code>
will be serializable only if the comparator is also serializable.
As most comparators have little or no state, making them serializable
is generally easy and good defensive programming.
</p>
Inefficient use of keySet iterator instead of entrySet iterator
<p> This method accesses the value of a Map entry, using a key that was retrieved from
a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the
Map.get(key) lookup.</p>
Non-virtual method call passes null for nonnull parameter
<p>
A possibly-null value is passed to a nonnull method parameter.
Either the parameter is annotated as a parameter that should
always be nonnull, or analysis has shown that it will always be
dereferenced.
</p>
Method ignores return value
<p> The return value of this method should be checked. One common
cause of this warning is to invoke a method on an immutable object,
thinking that it updates the object. For example, in the following code
fragment,</p>
<blockquote>
<pre>
String dateString = getHeaderField(name);
dateString.trim();
</pre>
</blockquote>
<p>the programmer seems to be thinking that the trim() method will update
the String referenced by dateString. But since Strings are immutable, the trim()
function returns a new String value, which is being ignored here. The code
should be corrected to: </p>
<blockquote>
<pre>
String dateString = getHeaderField(name);
dateString = dateString.trim();
</pre>
</blockquote>
Suspicious reference comparison
<p> This method compares two reference values using the == or != operator,
where the correct way to compare instances of this type is generally
with the equals() method.
It is possible to create distinct instances that are equal but do not compare as == since
they are different objects.
Examples of classes which should generally
not be compared by reference are java.lang.Integer, java.lang.Float, etc.</p>
Class defines field that masks a superclass field
<p> This class defines a field with the same name as a visible
instance field in a superclass. This is confusing, and
may indicate an error if methods update or access one of
the fields when they wanted the other.</p>
Method concatenates strings using + in a loop
<p> The method seems to be building a String using concatenation in a loop.
In each iteration, the String is converted to a StringBuffer/StringBuilder,
appended to, and converted back to a String.
This can lead to a cost quadratic in the number of iterations,
as the growing string is recopied in each iteration. </p>
<p>Better performance can be obtained by using
a StringBuffer (or StringBuilder in Java 1.5) explicitly.</p>
<p> For example:</p>
<pre>
// This is bad
String s = "";
for (int i = 0; i < field.length; ++i) {
s = s + field[i];
}
// This is better
StringBuffer buf = new StringBuffer();
for (int i = 0; i < field.length; ++i) {
buf.append(field[i]);
}
String s = buf.toString();
</pre>
Non-transient non-serializable instance field in serializable class
<p> This Serializable class defines a non-primitive instance field which is neither transient,
Serializable, or <code>java.lang.Object</code>, and does not appear to implement
the <code>Externalizable</code> interface or the
<code>readObject()</code> and <code>writeObject()</code> methods.
Objects of this class will not be deserialized correctly if a non-Serializable
object is stored in this field.</p>
Exception is caught when Exception is not thrown
<p>
This method uses a try-catch block that catches Exception objects, but Exception is not
thrown within the try block, and RuntimeException is not explicitly caught. It is a common bug pattern to
say try { ... } catch (Exception e) { something } as a shorthand for catching a number of types of exception
each of whose catch blocks is identical, but this construct also accidentally catches RuntimeException as well,
masking potential bugs.
</p>
String concatenation in loop using + operatorIncorrect definition of Serializable classUninitialized read of field in constructorQuestionable Boxing of primitive valueInefficient Map IteratorQuestionable use of reference equality rather than calling equalsStoring reference to mutable objectDead local storeDuplicate BranchesNull pointer dereferenceMutable static fieldUnused fieldProblems with implementation of equals()Unread field should be staticMasked FieldInner class could be made staticBad use of return value from methodRedundant comparison to nullUnread fieldBad casts of object referencesRuntimeException captureorg.springframework.security.Authenticationorg.springframework.security.context.SecurityContextorg.springframework.security.context.SecurityContextHolderorg.springframework.security.userdetails.UserDetails