/opt/hudson/home/jobs/1-1-site-deploy-perf/workspace/ks-1.1-perf/ks-lum/ks-lum-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/org/kuali/student/lum/ks-lum-program/1.1.0-M10-SNAPSHOT/ks-lum-program-1.1.0-M10-SNAPSHOT-sources.jar/home/tomcat/.m2/repository/org/kuali/student/lum/ks-lum-ui-common/1.1.0-M10-SNAPSHOT/ks-lum-ui-common-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-ui/1.1.0-M10-SNAPSHOT/ks-common-ui-1.1.0-M10-SNAPSHOT.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-M10-SNAPSHOT/ks-common-util-1.1.0-M10-SNAPSHOT.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/xml-apis/xml-apis/1.3.02/xml-apis-1.3.02.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-impl/1.1.0-M10-SNAPSHOT/ks-common-impl-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/common/ks-common-api/1.1.0-M10-SNAPSHOT/ks-common-api-1.1.0-M10-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/.m2/repository/commons-codec/commons-codec/20041127.091804/commons-codec-20041127.091804.jar/home/tomcat/.m2/repository/org/kuali/student/core/ks-core-ui/1.1.0-M10-SNAPSHOT/ks-core-ui-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/core/ks-core-api/1.1.0-M10-SNAPSHOT/ks-core-api-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/core/ks-core-rice/1.1.0-M10-SNAPSHOT/ks-core-rice-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/rice/rice-impl/1.0.3/rice-impl-1.0.3.jar/home/tomcat/.m2/repository/org/bouncycastle/bcprov-jdk15/1.45/bcprov-jdk15-1.45.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-frontend-jaxws/2.2.9/cxf-rt-frontend-jaxws-2.2.9.jar/home/tomcat/.m2/repository/xml-resolver/xml-resolver/1.2/xml-resolver-1.2.jar/home/tomcat/.m2/repository/asm/asm/2.2.3/asm-2.2.3.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-api/2.2.9/cxf-api-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-common-utilities/2.2.9/cxf-common-utilities-2.2.9.jar/home/tomcat/.m2/repository/org/apache/geronimo/specs/geronimo-stax-api_1.0_spec/1.0.1/geronimo-stax-api_1.0_spec-1.0.1.jar/home/tomcat/.m2/repository/wsdl4j/wsdl4j/1.6.2/wsdl4j-1.6.2.jar/home/tomcat/.m2/repository/org/apache/ws/commons/schema/XmlSchema/1.4.5/XmlSchema-1.4.5.jar/home/tomcat/.m2/repository/org/apache/neethi/neethi/2.0.4/neethi-2.0.4.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-common-schemas/2.2.9/cxf-common-schemas-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-core/2.2.9/cxf-rt-core-2.2.9.jar/home/tomcat/.m2/repository/com/sun/xml/bind/jaxb-impl/2.1.13/jaxb-impl-2.1.13.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-bindings-soap/2.2.9/cxf-rt-bindings-soap-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-tools-common/2.2.9/cxf-tools-common-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-databinding-jaxb/2.2.9/cxf-rt-databinding-jaxb-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-bindings-xml/2.2.9/cxf-rt-bindings-xml-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-frontend-simple/2.2.9/cxf-rt-frontend-simple-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-ws-addr/2.2.9/cxf-rt-ws-addr-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-frontend-jaxrs/2.2.9/cxf-rt-frontend-jaxrs-2.2.9.jar/home/tomcat/.m2/repository/javax/ws/rs/jsr311-api/1.0/jsr311-api-1.0.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-transports-http/2.2.9/cxf-rt-transports-http-2.2.9.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-databinding-aegis/2.2.9/cxf-rt-databinding-aegis-2.2.9.jar/home/tomcat/.m2/repository/org/apache/abdera/abdera-core/1.0/abdera-core-1.0.jar/home/tomcat/.m2/repository/org/apache/abdera/abdera-i18n/1.0/abdera-i18n-1.0.jar/home/tomcat/.m2/repository/org/apache/abdera/abdera-parser/1.0/abdera-parser-1.0.jar/home/tomcat/.m2/repository/org/apache/ws/commons/axiom/axiom-impl/1.2.5/axiom-impl-1.2.5.jar/home/tomcat/.m2/repository/org/apache/ws/commons/axiom/axiom-api/1.2.5/axiom-api-1.2.5.jar/home/tomcat/.m2/repository/org/apache/abdera/abdera-extensions-json/1.0/abdera-extensions-json-1.0.jar/home/tomcat/.m2/repository/org/apache/abdera/abdera-extensions-main/1.0/abdera-extensions-main-1.0.jar/home/tomcat/.m2/repository/org/codehaus/jettison/jettison/1.2/jettison-1.2.jar/home/tomcat/.m2/repository/org/apache/xmlbeans/xmlbeans/2.4.0/xmlbeans-2.4.0.jar/home/tomcat/.m2/repository/com/sun/xml/bind/jaxb-xjc/2.1.13/jaxb-xjc-2.1.13.jar/home/tomcat/.m2/repository/org/apache/cxf/cxf-rt-ws-security/2.2.9/cxf-rt-ws-security-2.2.9.jar/home/tomcat/.m2/repository/org/apache/ws/security/wss4j/1.5.8/wss4j-1.5.8.jar/home/tomcat/.m2/repository/org/apache/santuario/xmlsec/1.4.2/xmlsec-1.4.2.jar/home/tomcat/.m2/repository/xalan/xalan/2.7.1/xalan-2.7.1.jar/home/tomcat/.m2/repository/xalan/serializer/2.7.1/serializer-2.7.1.jar/home/tomcat/.m2/repository/cglib/cglib-nodep/2.1_3/cglib-nodep-2.1_3.jar/home/tomcat/.m2/repository/org/springframework/spring-jdbc/2.5.6/spring-jdbc-2.5.6.jar/home/tomcat/.m2/repository/org/springmodules/spring-modules-ojb/0.8a/spring-modules-ojb-0.8a.jar/home/tomcat/.m2/repository/commons-pool/commons-pool/1.2/commons-pool-1.2.jar/home/tomcat/.m2/repository/commons-dbcp/commons-dbcp/1.2.1/commons-dbcp-1.2.1.jar/home/tomcat/.m2/repository/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar/home/tomcat/.m2/repository/ojb/db-ojb/1.0.4-patch4/db-ojb-1.0.4-patch4.jar/home/tomcat/.m2/repository/commons-transaction/commons-transaction/1.1/commons-transaction-1.1.jar/home/tomcat/.m2/repository/javax/resource/connector-api/1.5/connector-api-1.5.jar/home/tomcat/.m2/repository/commons-httpclient/commons-httpclient/3.0.1/commons-httpclient-3.0.1.jar/home/tomcat/.m2/repository/xapool/xapool/1.5.0-patch3/xapool-1.5.0-patch3.jar/home/tomcat/.m2/repository/jotm/jotm/2.0.10/jotm-2.0.10.jar/home/tomcat/.m2/repository/jotm/jotm_jrmp_stubs/2.0.10/jotm_jrmp_stubs-2.0.10.jar/home/tomcat/.m2/repository/org/objectweb/carol/carol/2.0.5/carol-2.0.5.jar/home/tomcat/.m2/repository/howl/howl-logger/0.1.11/howl-logger-0.1.11.jar/home/tomcat/.m2/repository/org/hibernate/hibernate/3.2.6.ga/hibernate-3.2.6.ga.jar/home/tomcat/.m2/repository/asm/asm-attrs/1.5.3/asm-attrs-1.5.3.jar/home/tomcat/.m2/repository/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar/home/tomcat/.m2/repository/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar/home/tomcat/.m2/repository/org/hibernate/hibernate-commons-annotations/3.1.0.GA/hibernate-commons-annotations-3.1.0.GA.jar/home/tomcat/.m2/repository/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar/home/tomcat/.m2/repository/org/hibernate/hibernate-core/3.3.0.SP1/hibernate-core-3.3.0.SP1.jar/home/tomcat/.m2/repository/javassist/javassist/3.4.GA/javassist-3.4.GA.jar/home/tomcat/.m2/repository/concurrent/concurrent/1.3.4/concurrent-1.3.4.jar/home/tomcat/.m2/repository/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2.jar/home/tomcat/.m2/repository/xpp3/xpp3_min/1.1.3.4.O/xpp3_min-1.1.3.4.O.jar/home/tomcat/.m2/repository/dwr/dwr/1.1.3/dwr-1.1.3.jar/home/tomcat/.m2/repository/xom/xom/1.1/xom-1.1.jar/home/tomcat/.m2/repository/opensymphony/quartz/1.6.0/quartz-1.6.0.jar/home/tomcat/.m2/repository/org/kuali/student/lum/ks-lum-api/1.1.0-M10-SNAPSHOT/ks-lum-api-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/kuali/student/lum/ks-lum-rice/1.1.0-M10-SNAPSHOT/ks-lum-rice-1.1.0-M10-SNAPSHOT.jar/home/tomcat/.m2/repository/org/springframework/security/spring-security-core/2.0.4/spring-security-core-2.0.4.jar/home/tomcat/.m2/repository/org/kuali/student/lum/ks-lum-program/1.1.0-M10-SNAPSHOT/ks-lum-program-1.1.0-M10-SNAPSHOT.jar/opt/hudson/home/jobs/1-1-site-deploy-perf/workspace/ks-1.1-perf/ks-lum/ks-lum-ui/src/main/java/opt/hudson/home/jobs/1-1-site-deploy-perf/workspace/ks-1.1-perf/ks-lum/ks-lum-ui/targetPossible null pointer dereferencePossible null pointer dereference of cluSetInfo in org.kuali.student.lum.lu.assembly.CluSetManagementAssembler.upWrap(CluSetInfo)At CluSetManagementAssembler.java:[lines 50-543]In class org.kuali.student.lum.lu.assembly.CluSetManagementAssemblerIn method org.kuali.student.lum.lu.assembly.CluSetManagementAssembler.upWrap(CluSetInfo)Value loaded from cluSetInfoDereferenced at CluSetManagementAssembler.java:[line 198]Known null at CluSetManagementAssembler.java:[line 170]Redundant nullcheck of value known to be nullRedundant nullcheck of saveValidationResults which is known to be null in org.kuali.student.lum.lu.assembly.CluSetManagementAssembler.saveCluSet(Data)At CluSetManagementAssembler.java:[lines 50-543]In class org.kuali.student.lum.lu.assembly.CluSetManagementAssemblerIn method org.kuali.student.lum.lu.assembly.CluSetManagementAssembler.saveCluSet(Data)Value loaded from saveValidationResultsRedundant null check at CluSetManagementAssembler.java:[line 298]Dead store to local variableDead store to a in org.kuali.student.lum.lu.assembly.CluSetManagementIdTranslatorAssemblerFilter.translateIds(Data, AssemblerFilter$AssemblerManagerAccessable)At CluSetManagementIdTranslatorAssemblerFilter.java:[lines 22-174]In class org.kuali.student.lum.lu.assembly.CluSetManagementIdTranslatorAssemblerFilterIn method org.kuali.student.lum.lu.assembly.CluSetManagementIdTranslatorAssemblerFilter.translateIds(Data, AssemblerFilter$AssemblerManagerAccessable)Local variable named aAt CluSetManagementIdTranslatorAssemblerFilter.java:[line 60]Class defines field that masks a superclass fieldField CourseConfigurer.groupName masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.ConfigurerAt CourseConfigurer.java:[lines 113-1175]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurerIn CourseConfigurer.javaMasking field org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer.groupNameIn Configurer.javaMasked field org.kuali.student.common.ui.client.configurable.mvc.Configurer.groupNameAt CourseConfigurer.java:[lines 113-1175]Class defines field that masks a superclass fieldField CourseConfigurer.modelDefinition masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.ConfigurerAt CourseConfigurer.java:[lines 113-1175]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurerIn CourseConfigurer.javaMasking field org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer.modelDefinitionIn Configurer.javaMasked field org.kuali.student.common.ui.client.configurable.mvc.Configurer.modelDefinitionAt CourseConfigurer.java:[lines 113-1175]Class defines field that masks a superclass fieldField CourseConfigurer.state masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.ConfigurerAt CourseConfigurer.java:[lines 113-1175]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurerIn CourseConfigurer.javaMasking field org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer.stateIn Configurer.javaMasked field org.kuali.student.common.ui.client.configurable.mvc.Configurer.stateAt CourseConfigurer.java:[lines 113-1175]Class defines field that masks a superclass fieldField CourseConfigurer.type masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.ConfigurerAt CourseConfigurer.java:[lines 113-1175]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurerIn CourseConfigurer.javaMasking field org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer.typeIn Configurer.javaMasked field org.kuali.student.common.ui.client.configurable.mvc.Configurer.typeAt CourseConfigurer.java:[lines 113-1175]Should be a static inner classShould org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer$PersonList be a _static_ inner class?At CourseConfigurer.java:[lines 775-817]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer$PersonListAt CourseConfigurer.java:[lines 775-817]Should be a static inner classShould org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer$ProposerPersonList be a _static_ inner class?At CourseConfigurer.java:[lines 822-826]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseConfigurer$ProposerPersonListAt CourseConfigurer.java:[lines 822-826]Method ignores return valueorg.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8.setWidgetValue(HTML, DataModel, String) ignores return value of String.replace(CharSequence, CharSequence)At CourseSummaryConfigurer.java:[lines 786-829]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8In method org.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8.setWidgetValue(HTML, DataModel, String)Called method String.replace(CharSequence, CharSequence)At CourseSummaryConfigurer.java:[line 825]Method ignores return valueorg.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8.setWidgetValue(HTML, DataModel, String) ignores return value of String.trim()At CourseSummaryConfigurer.java:[lines 786-829]In class org.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8In method org.kuali.student.lum.lu.ui.course.client.configuration.CourseSummaryConfigurer$8.setWidgetValue(HTML, DataModel, String)Called method String.trim()At CourseSummaryConfigurer.java:[line 826]Dead store to local variableDead store to idType in org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseController.init(Callback)At ViewCourseController.java:[lines 71-464]In class org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseControllerIn method org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseController.init(Callback)Local variable named idTypeAt ViewCourseController.java:[line 175]Unread field: should this field be static?Unread field: org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseController.REFERENCE_TYPE; should this field be static?At ViewCourseController.java:[lines 71-464]In class org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseControllerIn ViewCourseController.javaField org.kuali.student.lum.lu.ui.course.client.controllers.ViewCourseController.REFERENCE_TYPEAt ViewCourseController.java:[line 82]Invocation of toString on an arrayInvocation of toString on Throwable.getStackTrace() in org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel.getStmtTypeInfo(String)At CourseRequirementsDataModel.java:[lines 39-434]In class org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModelIn method org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel.getStmtTypeInfo(String)Return value of Throwable.getStackTrace()At CourseRequirementsDataModel.java:[line 298]Another occurrence at CourseRequirementsDataModel.java:[line 299]Another occurrence at CourseRequirementsDataModel.java:[line 305]Inefficient use of keySet iterator instead of entrySet iteratorMethod org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel$5.onSuccess(Map) makes inefficient use of keySet iterator instead of entrySet iteratorAt CourseRequirementsDataModel.java:[lines 188-232]In class org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel$5In method org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel$5.onSuccess(Map)At CourseRequirementsDataModel.java:[line 198]Class names should start with an upper case letterThe class name org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel$requirementState doesn't start with an upper case letterAt CourseRequirementsDataModel.java:[line 46]In class org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsDataModel$requirementStateAt CourseRequirementsDataModel.java:[line 46]Unread fieldUnread field: org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageView.originalReqCompNLAt CourseRequirementsManageView.java:[lines 54-471]In class org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageViewIn CourseRequirementsManageView.javaField org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageView.originalReqCompNLAt CourseRequirementsManageView.java:[line 173]Unused fieldUnused field: org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageView.originalLogicExpressionAt CourseRequirementsManageView.java:[lines 54-471]In class org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageViewIn CourseRequirementsManageView.javaField org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsManageView.originalLogicExpressionIn CourseRequirementsManageView.javaPrivate method is never calledPrivate method org.kuali.student.lum.lu.ui.course.client.views.CurriculumHomeView.addIfPermitted(PermissionType, String) is never calledAt CurriculumHomeView.java:[lines 21-102]In class org.kuali.student.lum.lu.ui.course.client.views.CurriculumHomeViewIn method org.kuali.student.lum.lu.ui.course.client.views.CurriculumHomeView.addIfPermitted(PermissionType, String)At CurriculumHomeView.java:[lines 78-79]Unread fieldUnread field: org.kuali.student.lum.lu.ui.course.client.views.SelectVersionsView.metadataServiceAsyncAt SelectVersionsView.java:[lines 33-137]In class org.kuali.student.lum.lu.ui.course.client.views.SelectVersionsViewIn SelectVersionsView.javaField org.kuali.student.lum.lu.ui.course.client.views.SelectVersionsView.metadataServiceAsyncAt SelectVersionsView.java:[line 40]Dead store to local variableDead store to currVerPrevState in org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.updateCourseVersionStates(CourseInfo, String, CourseInfo, String, boolean, Date)At CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn method org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.updateCourseVersionStates(CourseInfo, String, CourseInfo, String, boolean, Date)Local variable named currVerPrevStateAt CourseRpcGwtServlet.java:[line 166]Method invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadorg.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.changeState(String, String, Date) invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadAt CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn method org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.changeState(String, String, Date)At CourseRpcGwtServlet.java:[line 143]Another occurrence at CourseRpcGwtServlet.java:[line 145]Method invokes inefficient Number constructor; use static valueOf insteadMethod org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.updateCourseVersionStates(CourseInfo, String, CourseInfo, String, boolean, Date) invokes inefficient new Long(long) constructor; use Long.valueOf(long) insteadAt CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn method org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.updateCourseVersionStates(CourseInfo, String, CourseInfo, String, boolean, Date)Called method new Long(long)Should call Long.valueOf(long) insteadAt CourseRpcGwtServlet.java:[line 198]Non-transient non-serializable instance field in serializable classClass org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet defines non-transient non-serializable instance field courseServiceAt CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn CourseRpcGwtServlet.javaField org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.courseServiceIn CourseRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet defines non-transient non-serializable instance field statementServiceAt CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn CourseRpcGwtServlet.javaField org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.statementServiceIn CourseRpcGwtServlet.javaInefficient use of keySet iterator instead of entrySet iteratorMethod org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.storeCourseStatements(String, Map, Map) makes inefficient use of keySet iterator instead of entrySet iteratorAt CourseRpcGwtServlet.java:[lines 41-245]In class org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServletIn method org.kuali.student.lum.lu.ui.course.server.gwt.CourseRpcGwtServlet.storeCourseStatements(String, Map, Map)At CourseRpcGwtServlet.java:[line 65]Field isn't final but should beorg.kuali.student.lum.lu.ui.main.client.controllers.ApplicationController.contentPanel isn't final but should beAt ApplicationController.java:[lines 20-82]In class org.kuali.student.lum.lu.ui.main.client.controllers.ApplicationControllerIn ApplicationController.javaField org.kuali.student.lum.lu.ui.main.client.controllers.ApplicationController.contentPanelAt ApplicationController.java:[line 20]Nullcheck of value previously dereferencedNullcheck of result at line 122 of value previously dereferenced in org.kuali.student.lum.lu.ui.main.client.widgets.ApplicationHeader$1.onSuccess(Map)At ApplicationHeader.java:[lines 114-135]In class org.kuali.student.lum.lu.ui.main.client.widgets.ApplicationHeader$1In method org.kuali.student.lum.lu.ui.main.client.widgets.ApplicationHeader$1.onSuccess(Map)Value loaded from resultAt ApplicationHeader.java:[line 121]Redundant null check at ApplicationHeader.java:[line 122]Method concatenates strings using + in a loopMethod org.kuali.student.lum.lu.ui.tools.client.configuration.CatalogBrowserConfigurer.formatMetadata(Metadata, String) concatenates strings using + in a loopAt CatalogBrowserConfigurer.java:[lines 33-155]In class org.kuali.student.lum.lu.ui.tools.client.configuration.CatalogBrowserConfigurerIn method org.kuali.student.lum.lu.ui.tools.client.configuration.CatalogBrowserConfigurer.formatMetadata(Metadata, String)At CatalogBrowserConfigurer.java:[line 109]Dead store to local variableDead store to cluRangeFieldEditDescriptor in org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer.addClusetDetailsSections(SectionView, String)At CluSetsConfigurer.java:[lines 63-616]In class org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurerIn method org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer.addClusetDetailsSections(SectionView, String)Local variable named cluRangeFieldEditDescriptorAt CluSetsConfigurer.java:[line 135]Should be a static inner classShould org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer$CluSetEditOptionList be a _static_ inner class?At CluSetsConfigurer.java:[lines 617-626]In class org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer$CluSetEditOptionListAt CluSetsConfigurer.java:[lines 617-626]Should be a static inner classShould org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer$ModelIdPlaceHolder be a _static_ inner class?At CluSetsConfigurer.java:[lines 603-613]In class org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsConfigurer$ModelIdPlaceHolderAt CluSetsConfigurer.java:[lines 603-613]Method invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadorg.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsManagementController$9.exec(List) invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadAt CluSetsManagementController.java:[lines 306-332]In class org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsManagementController$9In method org.kuali.student.lum.lu.ui.tools.client.configuration.CluSetsManagementController$9.exec(List)At CluSetsManagementController.java:[line 325]Method invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadorg.kuali.student.lum.lu.ui.tools.client.configuration.ClusetView$1$1.onSuccess(Metadata) invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadAt ClusetView.java:[lines 97-109]In class org.kuali.student.lum.lu.ui.tools.client.configuration.ClusetView$1$1In method org.kuali.student.lum.lu.ui.tools.client.configuration.ClusetView$1$1.onSuccess(Metadata)At ClusetView.java:[line 107]Should be a static inner classShould org.kuali.student.lum.lu.ui.tools.client.widgets.BrowsePanel$SelectButtonClickHandler be a _static_ inner class?At BrowsePanel.java:[lines 118-127]In class org.kuali.student.lum.lu.ui.tools.client.widgets.BrowsePanel$SelectButtonClickHandlerAt BrowsePanel.java:[lines 118-127]Should be a static inner classShould org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ExecuteNextSearchCallback be a _static_ inner class?At KSBrowser.java:[lines 88-103]In class org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ExecuteNextSearchCallbackAt KSBrowser.java:[lines 88-103]Should be a static inner classShould org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ViewCourseCallback be a _static_ inner class?At KSBrowser.java:[lines 111-125]In class org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ViewCourseCallbackAt KSBrowser.java:[lines 111-125]Unread fieldUnread field: org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ViewCourseCallback.controllerAt KSBrowser.java:[lines 111-125]In class org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ViewCourseCallbackIn KSBrowser.javaField org.kuali.student.lum.lu.ui.tools.client.widgets.KSBrowser$ViewCourseCallback.controllerAt KSBrowser.java:[line 112]Method invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadorg.kuali.student.lum.lu.ui.tools.server.gwt.CluSetDataService.isAuthorized(PermissionType, Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) insteadAt CluSetDataService.java:[lines 24-87]In class org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetDataServiceIn method org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetDataService.isAuthorized(PermissionType, Map)At CluSetDataService.java:[line 73]Possible null pointer dereferencePossible null pointer dereference of cluSetInfo in org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.upWrap(CluSetInfo)At CluSetManagementRpcGwtServlet.java:[lines 43-283]In class org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServletIn method org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.upWrap(CluSetInfo)Value loaded from cluSetInfoDereferenced at CluSetManagementRpcGwtServlet.java:[line 147]Known null at CluSetManagementRpcGwtServlet.java:[line 119]Method concatenates strings using + in a loopMethod org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.getCluInformations(List) concatenates strings using + in a loopAt CluSetManagementRpcGwtServlet.java:[lines 43-283]In class org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServletIn method org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.getCluInformations(List)At CluSetManagementRpcGwtServlet.java:[line 209]Non-transient non-serializable instance field in serializable classClass org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet defines non-transient non-serializable instance field lrcServiceAt CluSetManagementRpcGwtServlet.java:[lines 43-283]In class org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServletIn CluSetManagementRpcGwtServlet.javaField org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.lrcServiceIn CluSetManagementRpcGwtServlet.javaNon-transient non-serializable instance field in serializable classClass org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet defines non-transient non-serializable instance field luServiceAt CluSetManagementRpcGwtServlet.java:[lines 43-283]In class org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServletIn CluSetManagementRpcGwtServlet.javaField org.kuali.student.lum.lu.ui.tools.server.gwt.CluSetManagementRpcGwtServlet.luServiceIn CluSetManagementRpcGwtServlet.javaMalicious code vulnerabilityDodgyBad practiceCorrectnessPerformanceInefficient 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>
Class names should start with an upper case letter
<p> Class names should be nouns, in mixed case with the first letter of each internal word capitalized. Try to keep your class names simple and descriptive. Use whole words-avoid acronyms and abbreviations (unless the abbreviation is much more widely used than the long form, such as URL or HTML). </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>
Invocation of toString on an array
<p> The code invokes toString on an array, which will generate a fairly useless result such as [C@16f0472. Consider using Arrays.toString to convert the array into a readable String that gives the contents of the array. See Programming Puzzlers, chapter 3, puzzle 12. </p>
Private method is never called
<p> This private method is never called. Although it is possible that the method will be invoked through reflection, it is more likely that the method is never used, and should be removed. </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.&nbsp; Consider removing it from the class.</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>
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>
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>
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>
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>
Redundant nullcheck of value known to be null
<p> This method contains a redundant check of a known null value against the constant null.</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>
Method invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead
<p> Creating new instances of <code>java.lang.Boolean</code> wastes memory, since <code>Boolean</code> objects are immutable and there are only two useful values of this type.&nbsp; Use the <code>Boolean.valueOf()</code> method (or Java 1.5 autoboxing) to create <code>Boolean</code> objects instead.</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>
String concatenation in loop using + operatorIncorrect definition of Serializable classQuestionable Boxing of primitive valueInefficient Map IteratorPrivate method is never calledDead local storeNull pointer dereferenceMutable static fieldUnused fieldConfusing method nameDubious method usedUnread field should be staticMasked FieldInner class could be made staticRedundant comparison to nullBad use of return value from methodUnread fieldUseless/non-informative string generated