/home/tomcat/temp/student/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.1-SNAPSHOT/ks-common-util-1.1.1-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.1-SNAPSHOT/ks-common-util-1.1.1-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.1-SNAPSHOT/ks-common-impl-1.1.1-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-api/1.1.1-SNAPSHOT/ks-common-api-1.1.1-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/student/ks-common/ks-common-ui/src/main/java/home/tomcat/temp/student/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-116]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 95-99]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 56-173]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 58]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 36-143]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 37]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 36-143]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 112]Another occurrence at HasTextBinding.java:[line 116]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 34-93]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 36]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 21-82]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 60]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 28-83]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 29]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 39-130]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 41]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 105-122]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 109]Another occurrence at SelectItemWidgetBinding.java:[line 113]Another occurrence at SelectItemWidgetBinding.java:[line 118]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 49-512]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 49-512]Nullcheck of value previously dereferencedNullcheck of section at line 339 of value previously dereferenced in org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addSection(String[], SectionView)At TabbedSectionLayout.java:[lines 49-512]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 326]Redundant null check at TabbedSectionLayout.java:[line 339]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 41-165]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 42]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 41-165]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 110]Dead store to local variableDead store to tempContext in org.kuali.student.common.ui.client.mvc.Controller$3.exec(Boolean)At Controller.java:[lines 116-160]In class org.kuali.student.common.ui.client.mvc.Controller$3In method org.kuali.student.common.ui.client.mvc.Controller$3.exec(Boolean)Local variable named tempContextAt Controller.java:[line 124]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 23-164]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 25]Nullcheck of value previously dereferencedNullcheck of name at line 90 of value previously dereferenced in org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String)At BreadcrumbManager.java:[lines 23-164]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 90]Redundant null check at BreadcrumbManager.java:[line 104]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 23-164]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 74]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 52-296]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 54]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 52-296]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 292]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 52-296]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 291]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-29]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 22]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 59-314]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 86]Nullcheck of value previously dereferencedNullcheck of result at line 123 of value previously dereferenced in org.kuali.student.common.ui.client.widgets.containers.KSWrapper$1.onSuccess(Map)At KSWrapper.java:[lines 115-136]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 122]Redundant null check at KSWrapper.java:[line 123]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 70-519]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 23-134]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 25]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.buttonPanelAt TableFieldLayout.java:[lines 23-120]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 24]Unread fieldUnread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.topAt TableFieldLayout.java:[lines 23-120]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 23]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>
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>
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>
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>
Unused field
<p> This field is never used.&nbsp; Consider removing it from the class.</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>
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>
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>
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>
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.&nbsp; 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.&nbsp; 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>
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.&nbsp; Objects of this class will not be deserialized correctly if a non-Serializable object is stored in this field.</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 &lt; field.length; ++i) { s = s + field[i]; } // This is better StringBuffer buf = new StringBuffer(); for (int i = 0; i &lt; field.length; ++i) { buf.append(field[i]); } String s = buf.toString(); </pre>
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>
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.&nbsp; This reference makes the instances of the class larger, and may keep the reference to the creator object alive longer than necessary.&nbsp; If possible, the class should be made static. </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>
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 classQuestionable 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