razat-ag/embold_hf_java huggingface dataset:
Log Level Info In Catch Block 
 Logger level 'error' is expected in catch block.
Non-ThreadSafe Field Declaration 
 Field declared in spring component may not be thread safe.
Security Sensitive REGEX 
 Regex pattern coming as input (method parameter, web request attribute, etc.)
Compile REGEX Once 
 Regex pattern not a member, so compiled at every invocation
Initialization Of SecureRandom At Method Level 
 Secure Random should not initialize in method
Sleep In Synchronized Block 
 Avoid using Thread.sleep() in a synchronized block or method
Return Empty Array Or Collection Instead Of Null 
 Return an empty array or collection instead of a null value for methods that return an array or collection
Non-Private Field Access In Synchronized Block 
 Non-private field accessed in synchronized block indicates possibly partial synchronization
Should Not Use getRequestedSessionId API 
 HttpServletRequest.getRequestedSessionId() should not be used
Unsafe Jackson Deserialization 
 Using unsafe Jackson deserialization configuration is security-sensitive
Variables Should Not Be Self Assigned 
 Re-assignment of a variable to itself is redundant or mistake
Externalizable Must Have No Arguments Constructor 
 Externalizable Must Have No-arguments Constructor
RunFinalizersOnExit Should Not Be Called 
 RunFinalizersOnExit Should Not Be Called
Run Should Not Be Called Directly 
 Do not call run() method directly as it won't create a new thread and it will be in same stack as main.
Mismatch Regex Boundaries Should Not Be Used 
 Mismatch regex boundaries should not be used
Exceptions Should Not Be Thrown In Finally Block 
 Exceptions should not be thrown in finally block
Shortcircuit Logic Should Be Used In Boolean Contexts 
 Shortcircuit logic should be used in boolean contexts
Getters And Setters Should Access The Expected Fields 
 Getters and setters should access the expected fields
Exclude SpringBootApplication And ComponentScan From The Default Package 
 Exclude SpringBootApplication And ComponentScan From The Default Package
Maps With Enum Values Replace With EnumMap 
 Maps With Enum Values Replace With EnumMap
Avoid Concatenating Char As String 
 Avoid Concatenating Char As String
Empty Synchronized Block 
 A troubling part of code may indicate via an empty synchronization block.
Sensitive Data In Serializable Class 
 Sensitive Data In Serializable Class can be access by other classes through serialization
Static Final Array Should Be Private 
 An array that declares a final static should not be declared public as malicious code can alter that.
Avoid Using RSA Algorithm Without OAEP 
 Avoid Using RSA Algorithm Without OAEP
NP_BOOLEAN_RETURN_NULL 
 Method with Boolean return type returns explicit null
SW_SWING_METHODS_INVOKED_IN_SWING_THREAD 
 Certain swing methods needs to be invoked in Swing thread
FI_FINALIZER_ONLY_NULLS_FIELDS 
 Finalizer only nulls fields
FI_FINALIZER_NULLS_FIELDS 
 Finalizer nulls fields
UI_INHERITANCE_UNSAFE_GETRESOURCE 
 Usage of GetResource may be unsafe if class is extended
AM_CREATES_EMPTY_ZIP_FILE_ENTRY 
 Creates an empty zip file entry
AM_CREATES_EMPTY_JAR_FILE_ENTRY 
 Creates an empty jar file entry
IMSE_DONT_CATCH_IMSE 
 Dubious catching of IllegalMonitorStateException
CN_IMPLEMENTS_CLONE_BUT_NOT_CLONEABLE 
 Class defines clone
CN_IDIOM 
 Class implements Cloneable but does not define or use clone method
CN_IDIOM_NO_SUPER_CALL 
 clone method does not call super.clone
NM_FUTURE_KEYWORD_USED_AS_IDENTIFIER 
 Use of identifier that is a keyword in later versions of Java
NM_FUTURE_KEYWORD_USED_AS_MEMBER_IDENTIFIER 
 Use of identifier that is a keyword in later versions of Java
JCIP_FIELD_ISNT_FINAL_IN_IMMUTABLE_CLASS 
 Fields of immutable classes should be final
DM_RUN_FINALIZERS_ON_EXIT 
 Method invokes dangerous method runFinalizersOnExit
FI_NULLIFY_SUPER 
 Finalizer nullifies superclass finalizer
FI_MISSING_SUPER_CALL 
 Finalizer does not call superclass finalizer
EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS 
 Equals checks for incompatible operand
EQ_GETCLASS_AND_CLASS_CONSTANT 
 equals method fails for subtypes
RV_NEGATING_RESULT_OF_COMPARETO 
 Negating the result of compareTo
ES_COMPARING_STRINGS_WITH_EQ 
 Comparison of String objects using == or !=
ES_COMPARING_PARAMETER_STRING_WITH_EQ 
 Comparison of String parameter using == or !=
EQ_COMPARETO_USE_OBJECT_EQUALS 
 Class defines compareTo
HE_HASHCODE_USE_OBJECT_EQUALS 
 Class defines hashCode
HE_INHERITS_EQUALS_USE_HASHCODE 
 Class inherits equals
IC_SUPERCLASS_USES_SUBCLASS_DURING_INITIALIZATION 
 Superclass uses subclass during initialization
SI_INSTANCE_BEFORE_FINALS_ASSIGNED 
 Static initializer creates instance before all static final fields assigned
ME_MUTABLE_ENUM_FIELD 
 Enum field is public and mutable
ME_ENUM_FIELD_SETTER 
 Public enum method unconditionally sets its field
NM_METHOD_NAMING_CONVENTION 
 Method names should start with a lower case letter
NM_FIELD_NAMING_CONVENTION 
 Field names should start with a lower case letter
NM_SAME_SIMPLE_NAME_AS_INTERFACE 
 Class names shouldnâ€™t shadow simple name of implemented interface
NM_SAME_SIMPLE_NAME_AS_SUPERCLASS 
 Class names shouldnâ€™t shadow simple name of superclass
NM_CLASS_NAMING_CONVENTION 
 Class names should start with an upper case letter
NM_VERY_CONFUSING_INTENTIONAL 
 Very confusing method names
NM_WRONG_PACKAGE_INTENTIONAL 
 Method doesnâ€™t override method in superclass due to wrong package for parameter
NM_CLASS_NOT_EXCEPTION 
 Class is not derived from an Exception, even though it is named as such
SE_NO_SUITABLE_CONSTRUCTOR 
 Class is Serializable but its superclass doesnâ€™t define a void constructor
SE_NO_SUITABLE_CONSTRUCTOR_FOR_EXTERNALIZATION 
 Class is Externalizable but doesnâ€™t define a void constructor
SE_COMPARATOR_SHOULD_BE_SERIALIZABLE 
 Comparator doesnâ€™t implement Serializable
SE_NO_SERIALVERSIONID 
 Class is Serializable, but doesnâ€™t define serialVersionUID
SE_READ_RESOLVE_MUST_RETURN_OBJECT 
 The readResolve method must be declared with a return type of Object.
SE_TRANSIENT_FIELD_NOT_RESTORED 
 Transient field that isnâ€™t set by deserialization.
SE_NONFINAL_SERIALVERSIONID 
 serialVersionUID isnâ€™t final
SE_NONSTATIC_SERIALVERSIONID 
 serialVersionUID isnâ€™t static
SE_NONLONG_SERIALVERSIONID 
 serialVersionUID isnâ€™t long
SE_BAD_FIELD 
 Non-transient non-serializable instance field in serializable class
SE_BAD_FIELD_INNER_CLASS 
 Non-serializable class has a serializable inner class
SE_BAD_FIELD_STORE 
 Non-serializable value stored into instance field of a serializable class
RV_RETURN_VALUE_IGNORED_BAD_PRACTICE 
 Method ignores exceptional return value
NP_TOSTRING_COULD_RETURN_NULL 
 toString method may return null
NP_CLONE_COULD_RETURN_NULL 
 Clone method may return null
OS_OPEN_STREAM_EXCEPTION_PATH 
 Method may fail to close stream on exception
RC_REF_COMPARISON_BAD_PRACTICE 
 Suspicious reference comparison to constant
RC_REF_COMPARISON_BAD_PRACTICE_BOOLEAN 
 Suspicious reference comparison of Boolean values
VA_FORMAT_STRING_USES_NEWLINE 
 Format string should use %n rather than n
ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH 
 Method may fail to close database resource on exception
ISC_INSTANTIATE_STATIC_CLASS 
 Needless instantiation of class that only supplies static methods
DMI_RANDOM_USED_ONLY_ONCE 
 Random object created and used only once
BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS 
 Equals method should not assume anything about the type of its argument
J2EE_STORE_OF_NON_SERIALIZABLE_OBJECT_INTO_SESSION 
 Store of non serializable object into HttpSession
GC_UNCHECKED_TYPE_IN_GENERIC_CALL 
 Unchecked type in generic call
PZ_DONT_REUSE_ENTRY_OBJECTS_IN_ITERATORS 
 Donâ€™t reuse entry objects in iterators
DMI_ENTRY_SETS_MAY_REUSE_ENTRY_OBJECTS 
 Adding elements of an entry set may fail due to reuse of Entry objects
DMI_USING_REMOVEALL_TO_CLEAR_COLLECTION 
 Donâ€™t use removeAll to clear a collection
NP_OPTIONAL_RETURN_NULL 
 Method with Optional return type returns explicit null
NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 
 Non-null field is not initialized
VR_UNRESOLVABLE_REFERENCE 
 Class makes reference to unresolvable class or method
IO_APPENDING_TO_OBJECT_OUTPUT_STREAM 
 Doomed attempt to append to an object output stream
IL_CONTAINER_ADDED_TO_ITSELF 
 A collection is added to itself
FL_MATH_USING_FLOAT_PRECISION 
 Method performs math using floating point precision
CAA_COVARIANT_ARRAY_ELEMENT_STORE 
 Possibly incompatible element is stored in covariant array
DMI_VACUOUS_CALL_TO_EASYMOCK_METHOD 
 Useless/vacuous call to EasyMock method
DMI_FUTILE_ATTEMPT_TO_CHANGE_MAXPOOL_SIZE_OF_SCHEDULED_THREAD_POOL_EXECUTOR 
 Futile attempt to change max pool size of ScheduledThreadPoolExecutor
DMI_BIGDECIMAL_CONSTRUCTED_FROM_DOUBLE 
 BigDecimal constructed from double that isnâ€™t represented precisely
DMI_SCHEDULED_THREAD_POOL_EXECUTOR_WITH_ZERO_CORE_THREADS 
 Creation of ScheduledThreadPoolExecutor with zero core threads
DMI_ANNOTATION_IS_NOT_VISIBLE_TO_REFLECTION 
 Canâ€™t use reflection to check for presence of annotation without runtime retention
NP_ARGUMENT_MIGHT_BE_NULL 
 Method does not check for null argument
RV_ABSOLUTE_VALUE_OF_RANDOM_INT 
 Bad attempt to compute absolute value of signed random integer
RV_ABSOLUTE_VALUE_OF_HASHCODE 
 Bad attempt to compute absolute value of signed 32-bit hashcode
RV_01_TO_INT 
 Random value from 0 to 1 is coerced to the integer 0
DM_INVALID_MIN_MAX 
 Incorrect combination of Math.max and Math.min
EQ_COMPARING_CLASS_NAMES 
 equals method compares class names rather than class objects
EQ_OVERRIDING_EQUALS_NOT_SYMMETRIC 
 equals method overrides equals in superclass and may not be symmetric
EQ_DONT_DEFINE_EQUALS_FOR_ENUM 
 Covariant equals
HE_SIGNATURE_DECLARES_HASHING_OF_UNHASHABLE_CLASS 
 Signature declares use of unhashable class in hashed construct
HE_USE_OF_UNHASHABLE_CLASS 
 Use of class without a hashCode
UR_UNINIT_READ 
 Uninitialized read of field in constructor
UR_UNINIT_READ_CALLED_FROM_SUPER_CONSTRUCTOR 
 Uninitialized read of field method called from constructor of superclass
NM_WRONG_PACKAGE 
 Method doesnâ€™t override method in superclass due to wrong package for parameter
SE_READ_RESOLVE_IS_STATIC 
 The readResolve method must not be declared as a static method.
SE_METHOD_MUST_BE_PRIVATE 
 Method must be private in order for serialization to work
SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH 
 Dead store due to switch statement fall through
SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH_TO_THROW 
 Dead store due to switch statement fall through to throw
SIC_THREADLOCAL_DEADLY_EMBRACE 
 Deadly embrace of non-static inner class and thread local
RV_CHECK_COMPARETO_FOR_SPECIFIC_RETURN_VALUE 
 Code checks for specific values returned by compareTo
NP_STORE_INTO_NONNULL_FIELD 
 Store of null value into field annotated @Nonnull
NP_ALWAYS_NULL_EXCEPTION 
 Null pointer dereference in method on exception path
NP_NULL_ON_SOME_PATH 
 Possible null pointer dereference
NP_NULL_ON_SOME_PATH_EXCEPTION 
 Possible null pointer dereference in method on exception path
NP_NULL_PARAM_DEREF 
 Method call passes null for non-null parameter
NP_NULL_PARAM_DEREF_NONVIRTUAL 
 Non-virtual method call passes null for non-null parameter
NP_NULL_PARAM_DEREF_ALL_TARGETS_DANGEROUS 
 Method call passes null for non-null parameter
NP_NONNULL_PARAM_VIOLATION 
 Method call passes null to a non-null parameter
NP_NONNULL_RETURN_VIOLATION 
 Method may return null, but is declared @Nonnull
NP_GUARANTEED_DEREF 
 Null value is guaranteed to be dereferenced
NP_GUARANTEED_DEREF_ON_EXCEPTION_PATH 
 Value is null and guaranteed to be dereferenced on exception path
RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 
 Nullcheck of value previously dereferenced
VA_PRIMITIVE_ARRAY_PASSED_TO_OBJECT_VARARG 
 Primitive array passed to function expecting a variable number of object arguments
VA_FORMAT_STRING_BAD_CONVERSION 
 The type of a supplied argument doesnâ€™t match format specifier
VA_FORMAT_STRING_BAD_CONVERSION_FROM_ARRAY 
 Array formatted in useless way using format string
VA_FORMAT_STRING_NO_PREVIOUS_ARGUMENT 
 No previous argument for format string
VA_FORMAT_STRING_BAD_ARGUMENT 
 Format string placeholder incompatible with passed argument
VA_FORMAT_STRING_EXTRA_ARGUMENTS_PASSED 
 More arguments are passed than are actually used in the format string
VA_FORMAT_STRING_EXPECTED_MESSAGE_FORMAT_SUPPLIED 
 MessageFormat supplied where printf style format expected
EC_UNRELATED_TYPES_USING_POINTER_EQUALITY 
 Using pointer equality to compare different types
SA_LOCAL_SELF_ASSIGNMENT_INSTEAD_OF_FIELD 
 Self assignment of local rather than assignment to field
INT_BAD_COMPARISON_WITH_INT_VALUE 
 Bad comparison of int value with long constant
INT_BAD_COMPARISON_WITH_SIGNED_BYTE 
 Bad comparison of signed byte
INT_BAD_COMPARISON_WITH_NONNEGATIVE_VALUE 
 Bad comparison of nonnegative value with negative constant or zero
BIT_ADD_OF_SIGNED_BYTE 
 Bitwise add of signed byte value
BIT_IOR_OF_SIGNED_BYTE 
 Bitwise OR of signed byte value
BIT_SIGNED_CHECK_HIGH_BIT 
 Check for sign of bitwise operation involving negative number
SA_FIELD_SELF_COMPUTATION 
 Nonsensical self computation involving a field
SA_LOCAL_SELF_COMPUTATION 
 Nonsensical self computation involving a variable
UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS 
 Uncallable method defined in anonymous class
IJU_ASSERT_METHOD_INVOKED_FROM_RUN_METHOD 
 JUnit assertion in run method will not be noticed by JUnit
IJU_SETUP_NO_SUPER 
 TestCase defines setUp that doesnâ€™t call super.setUp
IJU_TEARDOWN_NO_SUPER 
 TestCase defines tearDown that doesnâ€™t call super.tearDown
IJU_SUITE_NOT_STATIC 
 TestCase implements a non-static suite method
BOA_BADLY_OVERRIDDEN_ADAPTER 
 Class overrides a method implemented in super class Adapter wrongly
SQL_BAD_RESULTSET_ACCESS 
 Method attempts to access a result set field with index 0
SQL_BAD_PREPARED_STATEMENT_ACCESS 
 Method attempts to access a prepared statement parameter with index 0
SIO_SUPERFLUOUS_INSTANCEOF 
 Unnecessary type check done using instanceof operator
BAC_BAD_APPLET_CONSTRUCTOR 
 Bad Applet Constructor relies on uninitialized AppletStub
STI_INTERRUPTED_ON_CURRENTTHREAD 
 Unneeded use of currentThread
DLS_DEAD_LOCAL_INCREMENT_IN_RETURN 
 Useless increment in return statement
DLS_DEAD_STORE_OF_CLASS_LITERAL 
 Dead store of class literal
IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN 
 A parameter is dead upon entry to a method but overwritten
MF_METHOD_MASKS_FIELD 
 Method defines a variable that obscures a field
MF_CLASS_MASKS_FIELD 
 Class defines field that masks a superclass field
FE_TEST_IF_EQUAL_TO_NOT_A_NUMBER 
 Doomed test for equality to NaN
ICAST_INT_2_LONG_AS_INSTANT 
 int value converted to long and used as absolute time
ICAST_INT_CAST_TO_DOUBLE_PASSED_TO_CEIL 
 Integral value cast to double and then passed to Math.ceil
ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 
 int value cast to float and then passed to Math.round
NP_NULL_INSTANCEOF 
 A known null value is checked to see if it is an instance of a type
DMI_LONG_BITS_TO_DOUBLE_INVOKED_ON_INT 
 Double.longBitsToDouble invoked on an int
BC_IMPOSSIBLE_DOWNCAST_OF_TOARRAY 
 Impossible downcast of toArray
RE_POSSIBLE_UNINTENDED_PATTERN 
 â€œ.â€ or â€œ|â€ used for regular expression
RE_BAD_SYNTAX_FOR_REGULAR_EXPRESSION 
 Invalid syntax for regular expression
RE_CANT_USE_FILE_SEPARATOR_AS_REGULAR_EXPRESSION 
 File.separator used for regular expression
ICAST_BAD_SHIFT_AMOUNT 
 32 bit int shifted by an amount not in the range -31..31
BSHIFT_WRONG_ADD_PRIORITY 
 Possible bad parsing of shift operation
IM_MULTIPLYING_RESULT_OF_IREM 
 Integer multiply of result of integer remainder
DMI_INVOKING_HASHCODE_ON_ARRAY 
 Invocation of hashCode on an array
DMI_INVOKING_TOSTRING_ON_ARRAY 
 Invocation of toString on an array
DMI_INVOKING_TOSTRING_ON_ANONYMOUS_ARRAY 
 Invocation of toString on an unnamed array
DMI_CALLING_NEXT_FROM_HASNEXT 
 hasNext method invokes next
QBA_QUESTIONABLE_BOOLEAN_ASSIGNMENT 
 Method assigns boolean literal in boolean expression
DMI_VACUOUS_SELF_COLLECTION_CALL 
 Vacuous call to collections
DMI_DOH 
 Dâ€™oh! A nonsensical method invocation
DMI_COLLECTIONS_SHOULD_NOT_CONTAIN_THEMSELVES 
 Collections should not contain themselves
TQ_UNKNOWN_VALUE_USED_WHERE_ALWAYS_STRICTLY_REQUIRED 
 Value without a type qualifier used where a value is required to have that qualifier
TQ_COMPARING_VALUES_WITH_INCOMPATIBLE_TYPE_QUALIFIERS 
 Comparing values with incompatible type qualifiers
TQ_ALWAYS_VALUE_USED_WHERE_NEVER_REQUIRED 
 Value annotated as carrying a type qualifier used where a value that must not carry that qualifier is required
TQ_NEVER_VALUE_USED_WHERE_ALWAYS_REQUIRED 
 Value annotated as never carrying a type qualifier used where value carrying that qualifier is required
TQ_MAYBE_SOURCE_VALUE_REACHES_ALWAYS_SINK 
 Value that might not carry a type qualifier is always used in a way requires that type qualifier
TQ_MAYBE_SOURCE_VALUE_REACHES_NEVER_SINK 
 Value that might carry a type qualifier is always used in a way prohibits it from having that type qualifier
OBL_UNSATISFIED_OBLIGATION 
 Method may fail to clean up stream or resource
OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE 
 Method may fail to clean up stream or resource on checked exception
LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE 
 Potential lost logger changes due to weak reference in OpenJDK
DM_CONVERT_CASE 
 Consider using Locale parameterized version of invoked method
DP_DO_INSIDE_DO_PRIVILEGED 
 Method invoked that should be only be invoked inside a doPrivileged block
DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED 
 Classloaders should only be created inside doPrivileged block
FI_PUBLIC_SHOULD_BE_PROTECTED 
 Finalizer should be protected, not public
EI_EXPOSE_REP 
 May expose internal representation by returning reference to mutable object
EI_EXPOSE_REP2 
 May expose internal representation by incorporating reference to mutable object
EI_EXPOSE_STATIC_REP2 
 May expose internal static state by storing a mutable object into a static field
MS_OOI_PKGPROTECT 
 Field should be moved out of an interface and made package protected
MS_FINAL_PKGPROTECT 
 Field should be both final and package protected
MS_SHOULD_BE_FINAL 
 Field isnâ€™t final but should be
MS_SHOULD_BE_REFACTORED_TO_BE_FINAL 
 Field isnâ€™t final but should be refactored to be so
MS_MUTABLE_COLLECTION_PKGPROTECT 
 Field is a mutable collection which should be package protected
MS_CANNOT_BE_FINAL 
 Field isnâ€™t final and canâ€™t be protected from malicious code
AT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTION 
 Sequence of calls to concurrent abstraction may not be atomic
STCAL_STATIC_SIMPLE_DATE_FORMAT_INSTANCE 
 Static DateFormat
STCAL_INVOKE_ON_STATIC_CALENDAR_INSTANCE 
 Call to static Calendar
STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE 
 Call to static DateFormat
NP_SYNC_AND_NULL_CHECK_FIELD 
 Synchronize and null check on the same field.
VO_VOLATILE_REFERENCE_TO_ARRAY 
 A volatile reference to an array doesnâ€™t treat the array elements as volatile
VO_VOLATILE_INCREMENT 
 An increment to a volatile field isnâ€™t atomic
DM_USELESS_THREAD 
 A thread was created using the default empty run method
DL_SYNCHRONIZATION_ON_SHARED_CONSTANT 
 Synchronization on interned String
DL_SYNCHRONIZATION_ON_BOXED_PRIMITIVE 
 Synchronization on boxed primitive
DL_SYNCHRONIZATION_ON_UNSHARED_BOXED_PRIMITIVE 
 Synchronization on boxed primitive values
WL_USING_GETCLASS_RATHER_THAN_CLASS_LITERAL 
 Synchronization on getClass rather than class literal
UG_SYNC_SET_UNSYNC_GET 
 Unsynchronized get method, synchronized set method
ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 
 Synchronization on field in futile attempt to guard that field
ML_SYNC_ON_UPDATED_FIELD 
 Method synchronizes on an updated field
WS_WRITEOBJECT_SYNC 
 Classâ€™s writeObject
RS_READOBJECT_SYNC 
 Classâ€™s readObject
UL_UNRELEASED_LOCK 
 Method does not release lock on all paths
UL_UNRELEASED_LOCK_EXCEPTION_PATH 
 Method does not release lock on all exception paths
LI_LAZY_INIT_STATIC 
 Incorrect lazy initialization of static field
LI_LAZY_INIT_UPDATE_STATIC 
 Incorrect lazy initialization and update of static field
JLM_JSR166_UTILCONCURRENT_MONITORENTER 
 Synchronization performed on util.concurrent instance
JML_JSR166_CALLING_WAIT_RATHER_THAN_AWAIT 
 Using monitor style wait methods on util.concurrent abstraction
JLM_JSR166_LOCK_MONITORENTER 
 Synchronization performed on Lock
SWL_SLEEP_WITH_LOCK_HELD 
 Method calls Thread.sleep
RV_RETURN_VALUE_OF_PUTIFABSENT_IGNORED 
 Return value of putIfAbsent ignored, value passed to putIfAbsent reused
HSC_HUGE_SHARED_STRING_CONSTANT 
 Huge string constants is duplicated across multiple class files
DMI_BLOCKING_METHODS_ON_URL 
 The equals and hashCode methods of URL are blocking
DMI_COLLECTION_OF_URLS 
 Maps and sets of URLs can be performance hogs
DM_STRING_VOID_CTOR 
 Method invokes inefficient new String
DM_GC 
 Explicit garbage collection; extremely dubious except in benchmarking code
DM_BOOLEAN_CTOR 
 Method invokes inefficient Boolean constructor; use Boolean.valueOf
DM_NUMBER_CTOR 
 Method invokes inefficient Number constructor; use static valueOf instead
DM_FP_NUMBER_CTOR 
 Method invokes inefficient floating-point Number constructor; use static valueOf instead
DM_BOXED_PRIMITIVE_TOSTRING 
 Method allocates a boxed primitive just to call toString
DM_BOXED_PRIMITIVE_FOR_PARSING 
 Boxing/unboxing to parse a primitive
DM_BOXED_PRIMITIVE_FOR_COMPARE 
 Boxing a primitive to compare
BX_UNBOXED_AND_COERCED_FOR_TERNARY_OPERATOR 
 Primitive value is unboxed and coerced for ternary operator
BX_UNBOXING_IMMEDIATELY_REBOXED 
 Boxed value is unboxed and then immediately reboxed
BX_BOXING_IMMEDIATELY_UNBOXED 
 Primitive value is boxed and then immediately unboxed
BX_BOXING_IMMEDIATELY_UNBOXED_TO_PERFORM_COERCION 
 Primitive value is boxed then unboxed to perform primitive coercion
DM_NEW_FOR_GETCLASS 
 Method allocates an object, only to get the class object
DM_NEXTINT_VIA_NEXTDOUBLE 
 Use the nextInt method of Random rather than nextDouble to generate a random integer
SIC_INNER_SHOULD_BE_STATIC 
 Should be a static inner class
SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS 
 Could be refactored into a static inner class
SIC_INNER_SHOULD_BE_STATIC_ANON 
 Could be refactored into a named static inner class
SBSC_USE_STRINGBUFFER_CONCATENATION 
 Method concatenates strings using + in a loop
IIL_ELEMENTS_GET_LENGTH_IN_LOOP 
 NodeList.getLength
IIL_PREPARE_STATEMENT_IN_LOOP 
 Method calls prepareStatement in a loop
IIL_PATTERN_COMPILE_IN_LOOP 
 Method calls Pattern.compile in a loop
IIL_PATTERN_COMPILE_IN_LOOP_INDIRECT 
 Method compiles the regular expression in a loop
IIO_INEFFICIENT_INDEX_OF 
 Inefficient use of String.indexOf
IIO_INEFFICIENT_LAST_INDEX_OF 
 Inefficient use of String.lastIndexOf
WMI_WRONG_MAP_ITERATOR 
 Inefficient use of keySet iterator instead of entrySet iterator
UM_UNNECESSARY_MATH 
 Method calls static Math class method on a constant value
IMA_INEFFICIENT_MEMBER_ACCESS 
 Method accesses a private member variable of owning class
XSS_REQUEST_PARAMETER_TO_SEND_ERROR 
 Servlet reflected cross site scripting vulnerability in error page
XSS_REQUEST_PARAMETER_TO_SERVLET_WRITER 
 Servlet reflected cross site scripting vulnerability
XSS_REQUEST_PARAMETER_TO_JSP_WRITER 
 JSP reflected cross site scripting vulnerability
HRS_REQUEST_PARAMETER_TO_HTTP_HEADER 
 HTTP Response splitting vulnerability
HRS_REQUEST_PARAMETER_TO_COOKIE 
 HTTP cookie formed from untrusted input
SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE 
 Nonconstant string passed to execute or addBatch method on an SQL statement
SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING 
 A prepared statement is generated from a nonconstant String
CAA_COVARIANT_ARRAY_FIELD 
 Covariant array assignment to a field
CAA_COVARIANT_ARRAY_RETURN 
 Covariant array is returned from the method
CAA_COVARIANT_ARRAY_LOCAL 
 Covariant array assignment to a local variable
DMI_THREAD_PASSED_WHERE_RUNNABLE_EXPECTED 
 Thread passed where Runnable expected
NP_DEREFERENCE_OF_READLINE_VALUE 
 Dereference of the result of readLine
NP_IMMEDIATE_DEREFERENCE_OF_READLINE 
 Immediate dereference of the result of readLine
RV_REM_OF_RANDOM_INT 
 Remainder of 32-bit signed random integer
RV_REM_OF_HASHCODE 
 Remainder of hashCode could be negative
EQ_DOESNT_OVERRIDE_EQUALS 
 Class doesnâ€™t override equals in superclass
NS_NON_SHORT_CIRCUIT 
 Questionable use of non-short-circuit logic
NS_DANGEROUS_NON_SHORT_CIRCUIT 
 Potentially dangerous use of non-short-circuit logic
IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 
 Potentially ambiguous invocation of either an inherited or outer method
SE_PRIVATE_READ_RESOLVE_NOT_INHERITED 
 Private readResolve method not inherited by subclasses
SE_TRANSIENT_FIELD_OF_NONSERIALIZABLE_CLASS 
 Transient field of class that isnâ€™t Serializable.
SF_SWITCH_FALLTHROUGH 
 Switch statement found where one case falls through to the next case
UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD 
 Unused public or protected field
URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD 
 Unread public/protected field
QF_QUESTIONABLE_FOR_LOOP 
 Complicated, subtle or wrong increment in for-loop
NP_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD 
 Read of unwritten public or protected field
UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 
 Field not initialized in constructor but dereferenced without null check
UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD 
 Unwritten public or protected field
UC_USELESS_VOID_METHOD 
 Useless non-empty void method
UC_USELESS_CONDITION_TYPE 
 Condition has no effect due to the variable type
UC_USELESS_OBJECT_STACK 
 Useless object created on stack
RV_RETURN_VALUE_IGNORED_INFERRED 
 Method ignores return value, is this OK?
RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT 
 Return value of method without side effect is ignored
RV_CHECK_FOR_POSITIVE_INDEXOF 
 Method checks to see if result of String.indexOf is positive
RV_DONT_JUST_NULL_CHECK_READLINE 
 Method discards result of readLine after checking if it is non-null
NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE 
 Parameter must be non-null but is marked as nullable
NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE 
 Possible null pointer dereference due to return value of called method
NP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE 
 Possible null pointer dereference on branch that might be infeasible
NP_LOAD_OF_KNOWN_NULL_VALUE 
 Load of known null value
PZLA_PREFER_ZERO_LENGTH_ARRAYS 
 Consider returning a zero length array rather than null
UCF_USELESS_CONTROL_FLOW_NEXT_LINE 
 Useless control flow to next line
RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE 
 Redundant nullcheck of value known to be null
RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 
 Redundant nullcheck of value known to be non-null
RCN_REDUNDANT_COMPARISON_TWO_NULL_VALUES 
 Redundant comparison of two null values
RCN_REDUNDANT_COMPARISON_OF_NULL_AND_NONNULL_VALUE 
 Redundant comparison of non-null value to null
VA_FORMAT_STRING_BAD_CONVERSION_TO_BOOLEAN 
 Non-Boolean argument formatted using %b format specifier
INT_VACUOUS_BIT_OPERATION 
 Vacuous bit mask operation on integer value
DLS_DEAD_LOCAL_STORE_IN_RETURN 
 Useless assignment in return statement
DLS_DEAD_LOCAL_STORE_SHADOWS_FIELD 
 Dead store to local variable that shadows field
DLS_DEAD_LOCAL_STORE_OF_NULL 
 Dead store of null to local variable
MTIA_SUSPECT_STRUTS_INSTANCE_FIELD 
 Class extends Struts Action class and uses instance variables
MTIA_SUSPECT_SERVLET_INSTANCE_FIELD 
 Class extends Servlet class and uses instance variables
PS_PUBLIC_SEMAPHORES 
 Class exposes synchronization and semaphores in its public interface
ICAST_INTEGER_MULTIPLY_CAST_TO_LONG 
 Result of integer multiplication cast to long
ICAST_IDIV_CAST_TO_DOUBLE 
 Integral division result cast to double or float
BC_BAD_CAST_TO_CONCRETE_COLLECTION 
 Questionable cast to concrete collection
BC_UNCONFIRMED_CAST 
 Unchecked/unconfirmed cast
BC_UNCONFIRMED_CAST_OF_RETURN_VALUE 
 Unchecked/unconfirmed cast of return value from method
BC_BAD_CAST_TO_ABSTRACT_COLLECTION 
 Questionable cast to abstract collection
IM_BAD_CHECK_FOR_ODD 
 Check for oddness that wonâ€™t work for negative numbers
IM_AVERAGE_COMPUTATION_COULD_OVERFLOW 
 Computation of average could overflow
ICAST_QUESTIONABLE_UNSIGNED_RIGHT_SHIFT 
 Unsigned right shift cast to short/byte
DMI_HARDCODED_ABSOLUTE_FILENAME 
 Code contains a hard coded reference to an absolute pathname
ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD 
 Write to static field from instance method
DMI_NONSERIALIZABLE_OBJECT_WRITTEN 
 Non serializable object written to ObjectOutput
DB_DUPLICATE_SWITCH_CLAUSES 
 Method uses the same code for two switch clauses
XFB_XML_FACTORY_BYPASS 
 Method directly allocates a specific implementation of xml interfaces
USM_USELESS_SUBCLASS_METHOD 
 Method superfluously delegates to parent class method
USM_USELESS_ABSTRACT_METHOD 
 Abstract Method is already defined in implemented interface
TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_NEVER_SINK 
 Value required to not have type qualifier, but marked as unknown
TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_ALWAYS_SINK 
 Value required to have type qualifier, but marked as unknown
NP_METHOD_RETURN_RELAXING_ANNOTATION 
 Method relaxes nullness annotation on return value
NP_METHOD_PARAMETER_TIGHTENS_ANNOTATION 
 Method tightens nullness annotation on parameter
ANDROID_WEB_VIEW_JAVASCRIPT 
 WebView with JavaScript enabled (Android)
ANDROID_WEB_VIEW_JAVASCRIPT_INTERFACE 
 WebView with JavaScript interface (Android)
CRLF_INJECTION_LOGS 
 Potential CRLF Injection for logs
DEFAULT_HTTP_CLIENT 
 DefaultHttpClient with default constructor is not compatible with TLS 1.2
DESERIALIZATION_GADGET 
 This class could be used as deserialization gadget
INFORMATION_EXPOSURE_THROUGH_AN_ERROR_MESSAGE 
 Information Exposure Through An Error Message
JSP_JSTL_OUT 
 Escaping of special XML characters is disabled
MALICIOUS_XSLT 
 A malicious XSLT could be provided
OGNL_INJECTION 
 Potential code injection when using OGNL expression
PLAY_UNVALIDATED_REDIRECT 
 Unvalidated Redirect (Play Framework)
PREDICTABLE_RANDOM_SCALA 
 Predictable pseudorandom number generator (Scala)
SCALA_PATH_TRAVERSAL_IN 
 Potential Path Traversal (file read)
SCALA_PLAY_SSRF 
 Scala Play Server-Side Request Forgery (SSRF)
SCALA_SENSITIVE_DATA_EXPOSURE 
 Potential information leakage in Scala Play
SCALA_SQL_INJECTION_ANORM 
 Potential Scala Anorm Injection
SCALA_SQL_INJECTION_SLICK 
 Potential Scala Slick Injection
SCALA_XSS_MVC_API 
 Potential XSS in Scala MVC API engine
SCALA_XSS_TWIRL 
 Potential XSS in Scala Twirl template engine
SEAM_LOG_INJECTION 
 Potential code injection in Seam logging call
SERVLET_HEADER_USER_AGENT 
 Untrusted User-Agent header
SPRING_CSRF_UNRESTRICTED_REQUEST_MAPPING 
 Spring CSRF unrestricted RequestMapping
SQL_INJECTION_HIBERNATE 
 Potential SQL/HQL Injection (Hibernate)
SQL_INJECTION_JDO 
 Potential SQL/JDOQL Injection (JDO)
SQL_INJECTION_JPA 
 Potential SQL/JPQL Injection (JPA)
SQL_INJECTION_SPRING_JDBC 
 Potential JDBC Injection (Spring JDBC)
TEMPLATE_INJECTION_FREEMARKER 
 Potential template injection with Freemarker
URLCONNECTION_SSRF_FD 
 URLConnection Server-Side Request Forgery (SSRF) and File Disclosure
WEAK_HOSTNAME_VERIFIER 
 HostnameVerifier that accept any signed certificates
WEAK_MESSAGE_DIGEST_MD5 
 MD2, MD4 and MD5 are weak hash functions
WEAK_MESSAGE_DIGEST_SHA1 
 SHA-1 is a weak hash function
XSS_REQUEST_WRAPPER 
 XSSRequestWrapper is a weak XSS protection
XXE_DTD_TRANSFORM_FACTORY 
 XML parsing vulnerable to XXE (TransformerFactory)
XXE_XMLSTREAMREADER 
 XML parsing vulnerable to XXE (XMLStreamReader)
XXE_XSLT_TRANSFORM_FACTORY 
 XSLT parsing vulnerable to XXE (TransformerFactory)
XXE_XPATH 
 XML External Entity (XXE) attacks can occur when an XML parser supports XML entities while processing XML received from an untrusted source.
SPRING_ENTITY_LEAK 
 Persistent objects should never be returned/accepted by APIs. They might lead to leaking business logic over the UI, unauthorized tampering of persistent objects in database.
RPC_ENABLED_EXTENSIONS 
 Enabling extensions in Apache XML RPC server or client can lead to deserialization vulnerability which would allow an attacker to execute arbitrary code.
WICKET_XSS1 
 Disabling HTML escaping put the application at risk for Cross-Site Scripting (XSS).
JumbledIncrementer 
 Avoid modifying an outer loop incrementer in an inner loop for update expression
ForLoopShouldBeWhileLoop 
 This for loop could be simplified to a while loop
OverrideBothEqualsAndHashcode 
 Ensure you override both equals() and hashCode()
DoubleCheckedLocking 
 Double checked locking is not thread safe in Java.
UnconditionalIfStatement 
 Do not use 'if' statements that are always true or always false
ClassCastExceptionWithToArray 
 This usage of the Collection.toArray() method will throw a ClassCastException.
AvoidDecimalLiteralsInBigDecimalConstructor 
 Avoid creating BigDecimal with a decimal (float/double) literal. Use a String literal
MisplacedNullCheck 
 The null check here is misplaced; if the variable is null there will be a NullPointerException
AvoidThreadGroup 
 Avoid using java.lang.ThreadGroup; it is not thread safe
BigIntegerInstantiation 
 Don't create instances of already existing BigInteger and BigDecimal (ZERO, ONE, TEN)
AvoidUsingOctalValues 
 Do not start a literal by 0 unless it's an octal value
AvoidUsingHardCodedIP 
 Do not hard code the IP address ${variableName}
CheckResultSet 
 Always check the return of one of the navigation method (next,previous,first,last) of a ResultSet.
AvoidMultipleUnaryOperators 
 Using multiple unary operators may be a bug, and/or is confusing.
CheckSkipResult 
 Check the value returned by the skip() method of an InputStream to see if the requested number of bytes has been skipped.
AvoidBranchingStatementAsLastInLoop 
 Avoid using a branching statement as the last in a loop.
DontCallThreadRun 
 Don't call Thread.run() explicitly, use Thread.start()
DontUseFloatTypeForLoopIndices 
 Don't use floating point for loop indices. If you must use floating point, use double.
SimplifiedTernary 
 Ternary operators that can be simplified with || or &&
IfStmtsMustUseBraces 
 Avoid using if statements without curly braces
WhileLoopsMustUseBraces 
 Avoid using 'while' statements without curly braces
IfElseStmtsMustUseBraces 
 Avoid using 'if...else' statements without curly braces
ForLoopsMustUseBraces 
 Avoid using 'for' statements without curly braces
CloneMethodMustImplementCloneable 
 clone() method should be implemented only if implementing Cloneable interface
CloneMethodReturnTypeMustMatchClassName 
 The return type of the clone() method must be the class name when implements Cloneable
CloneMethodMustBePublic 
 clone() method must be public if the class implements Cloneable
UnnecessaryConstructor 
 Avoid unnecessary constructors - the compiler will generate these for you
NullAssignment 
 Assigning an Object to null is a code smell.  Consider refactoring.
OnlyOneReturn 
 A method should have only one exit point, and that should be the last statement in the method
DontImportSun 
 Avoid importing anything from the 'sun.*' packages
SuspiciousOctalEscape 
 Suspicious decimal characters following octal escape in string literal
CallSuperInConstructor 
 It is a good practice to call super() in a constructor
AvoidFinalLocalVariable 
 Avoid using final local variables, turn them into fields
AvoidAccessibilityAlteration 
 You should modify visibility of class or methods using getDeclaredConstructors(), getDeclaredConstructor(Class[]), setAccessible() or PrivilegedAction.
DoNotCallGarbageCollectionExplicitly 
 Do not explicitly trigger a garbage collection.
OneDeclarationPerLine 
 Use one line for each declaration, it enhances code readability.
AvoidPrefixingMethodParameters 
 Avoid prefixing parameters by in, out or inOut. Uses Javadoc to document this behavior.
AvoidLiteralsInIfCondition 
 Avoid using Literals in Conditional Statements
UseObjectForClearerAPI 
 Rather than using a lot of String arguments, consider using a container object for those values.
UseConcurrentHashMap 
 If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation
LooseCoupling 
 Avoid using implementation types like ''{0}''; use the interface instead
LoosePackageCoupling 
 Use of ''{0}'' outside of package hierarchy ''{1}'' is not recommended; use recommended classes instead
UseUtilityClass 
 All methods are static.  Consider using a utility class instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning.
SimplifyBooleanReturns 
 Avoid unnecessary if..then..else statements when returning booleans
SwitchStmtsShouldHaveDefault 
 Switch statements should have a default label
AvoidDeeplyNestedIfStmts 
 Deeply nested if..then statements are hard to read
SwitchDensity 
 A high ratio of statements to labels in a switch statement.  Consider refactoring.
ConstructorCallsOverridableMethod 
 Overridable {0} called during object construction
AccessorClassGeneration 
 Avoid instantiation through private constructors from outside of the constructor's class.
DefaultLabelNotLastInSwitchStmt 
 The default label should be the last label in a switch statement
NonCaseLabelInSwitchStatement 
 A non-case label was present in a switch statement
OptimizableToArrayCall 
 This call to Collection.toArray() may be optimizable
ConfusingTernary 
 Avoid if (x != y) ..; else ..;
InstantiationToGetClass 
 Avoid instantiating an object just to call getClass() on it; use the .class public member instead
IdempotentOperations 
 Avoid idempotent operations (like assigning a variable to itself).
SimpleDateFormatNeedsLocale 
 When instantiating a SimpleDateFormat object, specify a Locale
ImmutableField 
 Private field ''{0}'' could be made final; it is only initialized in the declaration or constructor.
UseLocaleWithCaseConversions 
 When doing a String.toLowerCase()/toUpperCase() call, use a Locale
AvoidProtectedFieldInFinalClass 
 Avoid protected fields in a final class.  Change to private or package access.
AssignmentToNonFinalStatic 
 Possible unsafe assignment to a non-final static field in a constructor.
MissingStaticMethodInNonInstantiatableClass 
 Class cannot be instantiated and does not provide any static methods or fields
AvoidSynchronizedAtMethodLevel 
 Use block level rather than method level synchronization
UseNotifyAllInsteadOfNotify 
 Call Thread.notifyAll() rather than Thread.notify()
AvoidInstanceofChecksInCatchClause 
 An instanceof check is being performed on the caught exception.  Create a separate catch clause for this exception type.
PositionLiteralsFirstInComparisons 
 Position literals first in String comparisons
PositionLiteralsFirstInCaseInsensitiveComparisons 
 Position literals first in String comparisons for EqualsIgnoreCase
UnnecessaryLocalBeforeReturn 
 Consider simply returning the value vs storing it in local variable ''{0}''
SingletonClassReturningNewInstance 
 getInstance method always creates a new object and hence does not comply to Singleton Design Pattern behaviour. Please review
AvoidConstantsInterface 
 An Interface should be used only to model a behaviour; consider converting this to a class.
UnsynchronizedStaticDateFormatter 
 Static DateFormatter objects should be accessed in a synchronized manner
PreserveStackTrace 
 New exception is thrown in catch block, original stack trace may be lost
UseCollectionIsEmpty 
 Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty()
ClassWithOnlyPrivateConstructorsShouldBeFinal 
 A class which only has private constructors should be final
EmptyMethodInAbstractClassShouldBeAbstract 
 An empty method in an abstract class should be abstract instead
SingularField 
 Perhaps ''{0}'' could be replaced by a local variable.
AbstractClassWithoutAnyMethod 
 No abstract method which means that the keyword is most likely used to prevent instantiation. Use a private or protected constructor instead.
TooFewBranchesForASwitchStatement 
 A switch with less than three branches is inefficient, use a 'if statement' instead.
UseVarargs 
 Consider using varargs for methods or constructors which take an array the last parameter.
FieldDeclarationsShouldBeAtStartOfClass 
 Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes.
AvoidProtectedMethodInFinalClassNotExtending 
 Avoid protected methods in a final class that doesn't extend anything other than Object.  Change to private or package access.
ConstantsInInterface 
 Avoid constants in interfaces. Interfaces define types, constants are implementation details better placed in classes or enums. See Effective Java, item 19.
EmptyStatementNotInLoop 
 An empty statement (semicolon) not part of a loop
FinalizeOnlyCallsSuperFinalize 
 Finalize should do something besides just calling super.finalize()
FinalizeDoesNotCallSuperFinalize 
 Last statement in finalize method should be a call to super.finalize()
FinalizeShouldBeProtected 
 If you override finalize(), make it protected
TooManyStaticImports 
 Too many static imports may lead to messy code
UnnecessaryFullyQualifiedName 
 Unnecessary use of fully qualified name ''{0}'' due to existing {2}import ''{1}''
UseProperClassLoader 
 In J2EE, getClassLoader() might not work as expected.  Use Thread.currentThread().getContextClassLoader() instead.
MDBAndSessionBeanNamingConvention 
 SessionBean or MessageBean should be suffixed by Bean
RemoteSessionInterfaceNamingConvention 
 Remote Home interface of a Session EJB should be suffixed by 'Home'
LocalInterfaceSessionNamingConvention 
 The Local Interface of a Session EJB should be suffixed by 'Local'
LocalHomeNamingConvention 
 The Local Home interface of a Session EJB should be suffixed by 'LocalHome'
RemoteInterfaceNamingConvention 
 Remote Interface of a Session EJB should NOT be suffixed
DoNotCallSystemExit 
 System.exit() should not be used in J2EE/JEE apps
StaticEJBFieldShouldBeFinal 
 EJB's shouldn't have non-final static fields
DoNotUseThreads 
 To be compliant to J2EE, a webapp should not use any thread.
BeanMembersShouldSerialize 
 Found non-transient, non-static member. Please mark as transient or provide accessors.
MissingSerialVersionUID 
 Classes implementing Serializable should set a serialVersionUID
JUnitStaticSuite 
 You have a suite() method that is not both public and static, so JUnit won't call it to get your TestSuite.  Is that what you wanted to do?
JUnitSpelling 
 You may have misspelled a JUnit framework method (setUp or tearDown)
JUnitAssertionsShouldIncludeMessage 
 JUnit assertions should include a message
JUnitTestsShouldIncludeAssert 
 JUnit tests should include assert() or fail()
TestClassWithoutTestCases 
 This class name ends with 'Test' but contains no test cases
UnnecessaryBooleanAssertion 
 assertTrue(true) or similar statements are unnecessary
JUnitTestContainsTooManyAsserts 
 JUnit tests should not contain more than ${maximumAsserts} assert(s).
GuardDebugLogging 
 debug logging that involves string concatenation should be guarded with isDebugEnabled() checks
LoggerIsNotStaticFinal 
 The Logger variable declaration does not contain the static and final modifiers
ReplaceVectorWithList 
 Consider replacing this Vector with the newer java.util.List
ReplaceHashtableWithMap 
 Consider replacing this Hashtable with the newer java.util.Map
ReplaceEnumerationWithIterator 
 Consider replacing this Enumeration with the newer java.util.Iterator
AvoidEnumAsIdentifier 
 Avoid using enum as an identifier; it's a reserved word in JDK 1.5
AvoidAssertAsIdentifier 
 Avoid using assert as an identifier; it became a reserved word in JDK 1.4
JUnit4TestShouldUseBeforeAnnotation 
 JUnit 4 tests that set up tests should use the @Before annotation
JUnit4TestShouldUseAfterAnnotation 
 JUnit 4 tests that clean up tests should use the @After annotation
JUnit4TestShouldUseTestAnnotation 
 JUnit 4 tests that execute tests should use the @Test annotation
JUnit4SuitesShouldUseSuiteAnnotation 
 JUnit 4 indicates test suites via annotations, not the suite method.
JUnitUseExpected 
 In JUnit4, use the @Test(expected) annotation to denote tests that should throw exceptions
VariableNamingConventions 
 {0} variable {1} should begin with {2}
MethodNamingConventions 
 Method name does not begin with a lower case character.
AvoidDollarSigns 
 Avoid using dollar signs in variable/method/class/interface names
MethodWithSameNameAsEnclosingClass 
 Classes should not have non-constructor methods with the same name as the class
SuspiciousHashcodeMethodName 
 The method name and return type are suspiciously close to hashCode()
SuspiciousConstantFieldName 
 The field name indicates a constant but its modifiers do not
SuspiciousEqualsMethodName 
 The method name and parameter number are suspiciously close to equals(Object)
AvoidFieldNameMatchingTypeName 
 It is somewhat confusing to have a field name matching the declaring class name
AvoidFieldNameMatchingMethodName 
 Field {0} has the same name as a method
MisleadingVariableName 
 Avoid naming non-fields with the prefix 'm_'
BooleanGetMethodName 
 A 'getX()' method which returns a boolean should be named 'isX()'
GenericsNaming 
 Generics names should be a one letter long and upper case.
LocalVariableCouldBeFinal 
 Local variable ''{0}'' could be declared final
MethodArgumentCouldBeFinal 
 Parameter ''{0}'' is not assigned and could be declared final
AvoidInstantiatingObjectsInLoops 
 Avoid instantiating new objects inside loops
UseStringBufferForStringAppends 
 Prefer StringBuffer over += for concatenating strings
RedundantFieldInitializer 
 Avoid using redundant field initializer for ''${variableName}''
PrematureDeclaration 
 Avoid declaring a variable if it is unreferenced before a possible exit point.
AvoidCatchingThrowable 
 A catch statement should never catch throwable since it includes errors.
SignatureDeclareThrowsException 
 A method/constructor shouldn't explicitly throw java.lang.Exception
AvoidCatchingNPE 
 Avoid catching NullPointerException; consider removing the cause of the NPE.
AvoidThrowingRawExceptionTypes 
 Avoid throwing raw exception types.
AvoidThrowingNullPointerException 
 Avoid throwing null pointer exceptions.
AvoidRethrowingException 
 A catch statement that catches an exception only to rethrow it should be avoided.
DoNotExtendJavaLangError 
 Exceptions should not extend java.lang.Error
DoNotThrowExceptionInFinally 
 A throw statement in a finally block makes the control flow hard to understand.
AvoidThrowingNewInstanceOfSameException 
 A catch statement that catches an exception only to wrap it in a new instance of the same type of exception and throw it should be avoided
AvoidCatchingGenericException 
 Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block
AvoidLosingExceptionInformation 
 Avoid statements in a catch block that invoke accessors on the exception without using the information
AvoidDuplicateLiterals 
 The String literal {0} appears {1} times in this file; the first occurrence is on line {2}
InefficientStringBuffering 
 Avoid concatenating nonliterals in a StringBuffer/StringBuilder constructor or append().
UnnecessaryCaseChange 
 Using equalsIgnoreCase() is cleaner than using toUpperCase/toLowerCase().equals().
UseStringBufferLength 
 This is an inefficient use of StringBuffer.toString; call StringBuffer.length instead.
AppendCharacterWithChar 
 Avoid appending characters as strings in StringBuffer.append.
ConsecutiveAppendsShouldReuse 
 StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable.
ConsecutiveLiteralAppends 
 StringBuffer (or StringBuilder).append is called {0} consecutive times with literal Strings. Use a single append with a single combined String.
UseIndexOfChar 
 String.indexOf(char) is faster than String.indexOf(String).
InefficientEmptyStringCheck 
 String.trim().length()==0 is an inefficient way to validate an empty String.
InsufficientStringBufferDeclaration 
 StringBuffer constructor is initialized with size {0}, but has at least {1} characters appended.
UselessStringValueOf 
 No need to call String.valueOf to append to a string.
StringBufferInstantiationWithChar 
 Do not instantiate a StringBuffer or StringBuilder with a char
UseEqualsToCompareStrings 
 Use equals() to compare strings instead of ''=='' or ''!=''
AvoidStringBufferField 
 StringBuffers can grow quite a lot, and so may become a source of memory leak (if the owning class has a long life time).
MethodReturnsInternalArray 
 Returning ''{0}'' may expose an internal array.
ArrayIsStoredDirectly 
 The user-supplied array ''{0}'' is stored directly.
UnnecessaryConversionTemporary 
 Avoid unnecessary temporaries when converting primitives to Strings