Le document suivant contient les résultats de PMD 6.13.0.
Rule | Violation | Ligne |
---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 47 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 48 |
Rule | Violation | Ligne |
---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 47 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 48 |
Rule | Violation | Ligne |
---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 46–161 |
Rule | Violation | Ligne |
---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 46 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 47 |
Rule | Violation | Ligne |
---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 45–107 |
FieldNamingConventions | The constant name '_dao' doesn't match '[A-Z][A-Z_0-9]*' | 50 |
Rule | Violation | Ligne |
---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 42–65 |
Rule | Violation | Ligne |
---|---|---|
GuardLogStatement | Logger calls should be surrounded by log level guards. | 269 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 277 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 284 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 291 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 298 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 305 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 73 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 90 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 72 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 83 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 201 |
Rule | Violation | Ligne |
---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 294 |
Rule | Violation | Ligne |
---|---|---|
GuardLogStatement | Logger calls should be surrounded by log level guards. | 305 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 315 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 323–324 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 331 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 338 |
Rule | Violation | Ligne |
---|---|---|
CommentRequired | Header comments are required | 46–333 |
MissingOverride | The method 'getIdParent()' is missing an @Override annotation. | 58–61 |
MissingOverride | The method 'setIdParent(int)' is missing an @Override annotation. | 67–70 |
CommentRequired | Public method and constructor comments are required | 77–80 |
MissingOverride | The method 'getIdQuicklinks()' is missing an @Override annotation. | 77–80 |
MissingOverride | The method 'setIdQuicklinks(int)' is missing an @Override annotation. | 87–90 |
CommentRequired | Public method and constructor comments are required | 87–90 |
MissingOverride | The method 'getId()' is missing an @Override annotation. | 97–100 |
CommentRequired | Public method and constructor comments are required | 97–100 |
CommentRequired | Public method and constructor comments are required | 107–110 |
MissingOverride | The method 'setId(int)' is missing an @Override annotation. | 107–110 |
MissingOverride | The method 'getIdOrder()' is missing an @Override annotation. | 117–120 |
CommentRequired | Public method and constructor comments are required | 117–120 |
CommentRequired | Public method and constructor comments are required | 127–130 |
MissingOverride | The method 'setIdOrder(int)' is missing an @Override annotation. | 127–130 |
MissingOverride | The method 'getEntryType()' is missing an @Override annotation. | 137–140 |
MissingOverride | The method 'setEntryType(EntryType)' is missing an @Override annotation. | 147–150 |
MissingOverride | The method 'getTitle()' is missing an @Override annotation. | 159–162 |
CommentRequired | Public method and constructor comments are required | 159–162 |
MissingOverride | The method 'setTitle(String)' is missing an @Override annotation. | 169–171 |
CommentRequired | Public method and constructor comments are required | 169–171 |
UncommentedEmptyMethodBody | Document empty method body | 170–171 |
MissingOverride | The method 'clone()' is missing an @Override annotation. | 176–179 |
CloneMethodReturnTypeMustMatchClassName | The return type of the clone() method must be the class name when implements Cloneable | 176–179 |
MissingOverride | The method 'copy(int, Plugin)' is missing an @Override annotation. | 190–193 |
MissingOverride | The method 'copy(int, Plugin, String)' is missing an @Override annotation. | 206–236 |
CommentRequired | Public method and constructor comments are required | 243–246 |
MissingOverride | The method 'getHtml(Plugin, Locale)' is missing an @Override annotation. | 243–246 |
CommentRequired | Public method and constructor comments are required | 253–256 |
MissingOverride | The method 'getChilds(Plugin)' is missing an @Override annotation. | 253–256 |
MissingOverride | The method 'getParent(Plugin)' is missing an @Override annotation. | 263–266 |
CommentRequired | Public method and constructor comments are required | 263–266 |
MissingOverride | The method 'setSpecificParameters(HttpServletRequest)' is missing an @Override annotation. | 275–278 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificParameters' should not return any type except void linguistically | 275–278 |
LinguisticNaming | Linguistics Antipattern - The getter 'getSpecificParameters' should not return void linguistically | 290–292 |
MissingOverride | The method 'getSpecificParameters(HttpServletRequest, Map, Plugin)' is missing an @Override annotation. | 290–292 |
UncommentedEmptyMethodBody | Document empty method body | 291–292 |
MissingOverride | The method 'loadSpecificParameters(Plugin)' is missing an @Override annotation. | 300–302 |
UncommentedEmptyMethodBody | Document empty method body | 301–302 |
MissingOverride | The method 'createSpecificParameters(Plugin)' is missing an @Override annotation. | 310–312 |
UncommentedEmptyMethodBody | Document empty method body | 311–312 |
MissingOverride | The method 'removeSpecificParameters(Plugin)' is missing an @Override annotation. | 320–322 |
UncommentedEmptyMethodBody | Document empty method body | 321–322 |
MissingOverride | The method 'updateSpecificParameters(Plugin)' is missing an @Override annotation. | 330–332 |
UncommentedEmptyMethodBody | Document empty method body | 331–332 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 102–124 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 132–140 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 148–163 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 171–184 |
MissingOverride | The method 'findByFilter(EntryFilter, Plugin)' is missing an @Override annotation. | 193–218 |
NPathComplexity | The method 'getDaoFromFilter(String, EntryFilter, Plugin)' has an NPath complexity of 15552 | 227–308 |
CyclomaticComplexity | The method 'getDaoFromFilter(String, EntryFilter, Plugin)' has a cyclomatic complexity of 17. | 227–308 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 234 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 234 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 240 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 240 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 246 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 246 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 252 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 252 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 258 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 258 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 264 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 267 |
Rule | Violation | Ligne |
---|---|---|
TooManyMethods | This class has too many methods, consider refactoring it. | 50–486 |
AvoidProtectedFieldInFinalClass | Avoid protected fields in a final class. Change to private or package access. | 53 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificEntry' should not return any type except void linguistically | 314–339 |
AvoidLiteralsInIfCondition | Avoid using Literals in Conditional Statements | 361 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 61–93 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 101–109 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 118–147 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 120 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 155–183 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 157 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 58–90 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 60 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 98–106 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 115–144 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 117 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 152–179 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 154 |
Rule | Violation | Ligne |
---|---|---|
CloneMethodMustImplementCloneable | clone() method should be implemented only if implementing Cloneable interface | 72–81 |
CloneMethodMustBePublic | clone() method must be public if the class implements Cloneable | 72–81 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(int, int, Plugin)' is missing an @Override annotation. | 95–116 |
MissingOverride | The method 'delete(int, int, Plugin)' is missing an @Override annotation. | 126–135 |
MissingOverride | The method 'insert(EntrySelectOption, Plugin)' is missing an @Override annotation. | 144–160 |
MissingOverride | The method 'store(EntrySelectOption, Plugin)' is missing an @Override annotation. | 168–181 |
MissingOverride | The method 'select(Plugin)' is missing an @Override annotation. | 189–210 |
MissingOverride | The method 'selectByEntry(int, Plugin)' is missing an @Override annotation. | 219–239 |
Rule | Violation | Ligne |
---|---|---|
AvoidProtectedFieldInFinalClass | Avoid protected fields in a final class. Change to private or package access. | 50 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 61–93 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 101–109 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 118–147 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 120 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 155–183 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 157 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 61–80 |
MissingOverride | The method 'select(Plugin)' is missing an @Override annotation. | 88–109 |
Rule | Violation | Ligne |
---|---|---|
MethodReturnsInternalArray | Returning '_bytesImage' may expose an internal array. | 137 |
ArrayIsStoredDirectly | The user-supplied array 'image' is stored directly. | 144 |
NPathComplexity | The method 'setSpecificParameters(HttpServletRequest)' has an NPath complexity of 240 | 265–329 |
CyclomaticComplexity | The method 'setSpecificParameters(HttpServletRequest)' has a cyclomatic complexity of 11. | 265–329 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 276 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 61–99 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 107–115 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 124–159 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 126 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 167–201 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 169 |
Rule | Violation | Ligne |
---|---|---|
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'EntryUrlDisplayProperties(int, String)': enum constructors are implicitly private | 56–60 |
Rule | Violation | Ligne |
---|---|---|
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'EntryUrlLinkProperties(int, String)': enum constructors are implicitly private | 56–60 |
Rule | Violation | Ligne |
---|---|---|
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdQuicklinks': the method is declared in an interface type | 53 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdQuicklinks': the method is declared in an interface type | 59 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getId': the method is declared in an interface type | 64 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setId': the method is declared in an interface type | 70 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdOrder': the method is declared in an interface type | 75 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdOrder': the method is declared in an interface type | 81 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdParent': the method is declared in an interface type | 86 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdParent': the method is declared in an interface type | 92 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getParent': the method is declared in an interface type | 99 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getChilds': the method is declared in an interface type | 108 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getEntryType': the method is declared in an interface type | 113 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setEntryType': the method is declared in an interface type | 119 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getTitle': the method is declared in an interface type | 124 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setTitle': the method is declared in an interface type | 130 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getHtml': the method is declared in an interface type | 141 |
LinguisticNaming | Linguistics Antipattern - The getter 'getSpecificParameters' should not return void linguistically | 153 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getSpecificParameters': the method is declared in an interface type | 153 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificParameters' should not return any type except void linguistically | 162 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setSpecificParameters': the method is declared in an interface type | 162 |
CloneMethodMustImplementCloneable | clone() method should be implemented only if implementing Cloneable interface | 169 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'clone': the method is declared in an interface type | 169 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'copy': the method is declared in an interface type | 180 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'copy': the method is declared in an interface type | 193 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'loadSpecificParameters': the method is declared in an interface type | 201 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'createSpecificParameters': the method is declared in an interface type | 209 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'removeSpecificParameters': the method is declared in an interface type | 217 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'updateSpecificParameters': the method is declared in an interface type | 225 |
Rule | Violation | Ligne |
---|---|---|
NonThreadSafeSingleton | Singleton is not thread safe | 99–103 |
MissingOverride | The method 'getWorkgroup()' is missing an @Override annotation. | 203–206 |
MissingOverride | The method 'getResourceId()' is missing an @Override annotation. | 211–214 |
MissingOverride | The method 'getResourceTypeCode()' is missing an @Override annotation. | 219–222 |
LinguisticNaming | Linguistics Antipattern - The getter 'getEntryXml' should not return void linguistically | 270–286 |
CloneMethodMustBePublic | clone() method must be public if the class implements Cloneable | 294–304 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'getPermission()' is missing an @Override annotation. | 186–189 |
MissingOverride | The method 'setLocale(Locale)' is missing an @Override annotation. | 208–211 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'selectActionsByQuicklinksState(boolean, Plugin)' is missing an @Override annotation. | 58–81 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. | 79–93 |
AvoidSynchronizedAtMethodLevel | Use block level rather than method level synchronization | 102–120 |
MissingOverride | The method 'insert(Quicklinks, Plugin)' is missing an @Override annotation. | 102–120 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 128–136 |
MissingOverride | The method 'store(Quicklinks, Plugin)' is missing an @Override annotation. | 144–159 |
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 168–191 |
MissingOverride | The method 'findAll(Plugin)' is missing an @Override annotation. | 199–223 |
MissingOverride | The method 'findbyFilter(QuicklinksFilter, Plugin)' is missing an @Override annotation. | 232–257 |
NPathComplexity | The method 'getDaoFromFilter(String, QuicklinksFilter, Plugin)' has an NPath complexity of 2048 | 266–342 |
CyclomaticComplexity | The method 'getDaoFromFilter(String, QuicklinksFilter, Plugin)' has a cyclomatic complexity of 14. | 266–342 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 302 |
Rule | Violation | Ligne |
---|---|---|
MethodReturnsInternalArray | Returning '_arrayRoleKey' may expose an internal array. | 52 |
ArrayIsStoredDirectly | The user-supplied array 'arrayRoleKey' is stored directly. | 62 |
Rule | Violation | Ligne |
---|---|---|
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'QuicklinksType(int, String)': enum constructors are implicitly private | 55–59 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'canBeRemoved(String)' is missing an @Override annotation. | 60–73 |
MissingOverride | The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. | 84–88 |
Rule | Violation | Ligne |
---|---|---|
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the getInstance method if you want a default access modifier | 64–67 |
DefaultPackage | Use explicit scoping instead of the default package private level | 64–67 |
DefaultPackage | Use explicit scoping instead of the default package private level | 76–106 |
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the selectPageListbyName method if you want a default access modifier | 76–106 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'delete(int)' is missing an @Override annotation. | 51 |
MissingOverride | The method 'insert(Portlet)' is missing an @Override annotation. | 60 |
MissingOverride | The method 'load(int)' is missing an @Override annotation. | 70 |
MissingOverride | The method 'store(Portlet)' is missing an @Override annotation. | 88 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'getXml(HttpServletRequest)' is missing an @Override annotation. | 72–99 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 77–84 |
MissingOverride | The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. | 108–111 |
MissingOverride | The method 'remove()' is missing an @Override annotation. | 124–127 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'insert(Portlet)' is missing an @Override annotation. | 60–71 |
ShortVariable | Avoid variables with short names like p | 62 |
MissingOverride | The method 'delete(int)' is missing an @Override annotation. | 79–86 |
MissingOverride | The method 'load(int)' is missing an @Override annotation. | 96–111 |
MissingOverride | The method 'selectCountPortletByIdQuicklinks(int)' is missing an @Override annotation. | 119–135 |
MissingOverride | The method 'store(Portlet)' is missing an @Override annotation. | 143–153 |
ShortVariable | Avoid variables with short names like p | 145 |
Rule | Violation | Ligne |
---|---|---|
AssignmentToNonFinalStatic | Possible unsafe assignment to a non-final static field in a constructor. | 52 |
CallSuperInConstructor | It is a good practice to call super() in a constructor | 57–63 |
NonThreadSafeSingleton | Singleton is not thread safe | 72–75 |
MissingOverride | The method 'getPortletTypeId()' is missing an @Override annotation. | 85–89 |
MissingOverride | The method 'getDAO()' is missing an @Override annotation. | 96–99 |
Rule | Violation | Ligne |
---|---|---|
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the EntryUrlService constructor if you want a default access modifier | 59–62 |
MissingOverride | The method 'getImageResource(int)' is missing an @Override annotation. | 81–94 |
MissingOverride | The method 'getResourceTypeId()' is missing an @Override annotation. | 101–104 |
Rule | Violation | Ligne |
---|---|---|
CallSuperInConstructor | It is a good practice to call super() in a constructor | 77–80 |
MissingOverride | The method 'register()' is missing an @Override annotation. | 85–119 |
ShortVariable | Avoid variables with short names like rt | 87 |
ShortVariable | Avoid variables with short names like p | 93 |
MissingOverride | The method 'getResourceIdList(Locale)' is missing an @Override annotation. | 128–131 |
MissingOverride | The method 'getTitle(String, Locale)' is missing an @Override annotation. | 142–158 |
Rule | Violation | Ligne |
---|---|---|
CommentRequired | Header comments are required | 38–60 |
Rule | Violation | Ligne |
---|---|---|
ImmutableField | Private field '_pageService' could be made final; it is only initialized in the declaration or constructor. | 107 |
MissingOverride | The method 'getInsertServiceSelectorUI(HttpServletRequest)' is missing an @Override annotation. | 118–158 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 205 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 206 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 207 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 208 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 210 |
LooseCoupling | Avoid using implementation types like 'HashMap'; use the interface instead | 239 |
Rule | Violation | Ligne |
---|---|---|
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 128 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 202 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 245 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 332 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'fillTemplate(Map, PageData, int, HttpServletRequest)' is missing an @Override annotation. | 99–113 |
UselessStringValueOf | No need to call String.valueOf to append to a string. | 111 |
ShortVariable | Avoid variables with short names like in | 141 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 171–178 |
Rule | Violation | Ligne |
---|---|---|
ExcessiveImports | A high number of imports can indicate a high degree of coupling within an object. | 34–1165 |
CyclomaticComplexity | The class 'QuicklinksJspBean' has a total cyclomatic complexity of 113 (highest 13). | 83–1165 |
ExcessiveClassLength | Avoid really long classes. | 83–1165 |
TooManyMethods | This class has too many methods, consider refactoring it. | 84–1165 |
UselessStringValueOf | No need to call String.valueOf to append to a string. | 216 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 250 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 306 |
CyclomaticComplexity | The method 'doModifyQuicklinks(HttpServletRequest)' has a cyclomatic complexity of 13. | 409–478 |
NPathComplexity | The method 'doModifyQuicklinks(HttpServletRequest)' has an NPath complexity of 384 | 409–478 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 416 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 422 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 467–475 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 685 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 686 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 688 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 734 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 735 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 737 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 739 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 809 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 856 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 858 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 907 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 946 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 987 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 1026 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 1075 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 1133 |
Rule | Violation | Ligne |
---|---|---|
MissingOverride | The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. | 89–117 |
MissingOverride | The method 'getModify(HttpServletRequest)' is missing an @Override annotation. | 126–167 |
MissingOverride | The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. | 176–215 |
MissingOverride | The method 'doModify(HttpServletRequest)' is missing an @Override annotation. | 224–263 |
Rule | Violation | Ligne |
---|---|---|
UnusedImports | Avoid unused imports such as 'fr.paris.lutece.portal.web.constants.Messages' | 47 |
Rule | Violation | Ligne |
---|---|---|
UseVarargs | Consider using varargs for methods or constructors which take an array the last parameter. | 62 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
CommentRequired | Header comments are required | 3 | 46–333 |
MissingOverride | The method 'getIdParent()' is missing an @Override annotation. | 3 | 58–61 |
MissingOverride | The method 'setIdParent(int)' is missing an @Override annotation. | 3 | 67–70 |
CommentRequired | Public method and constructor comments are required | 3 | 77–80 |
MissingOverride | The method 'getIdQuicklinks()' is missing an @Override annotation. | 3 | 77–80 |
MissingOverride | The method 'setIdQuicklinks(int)' is missing an @Override annotation. | 3 | 87–90 |
CommentRequired | Public method and constructor comments are required | 3 | 87–90 |
MissingOverride | The method 'getId()' is missing an @Override annotation. | 3 | 97–100 |
CommentRequired | Public method and constructor comments are required | 3 | 97–100 |
CommentRequired | Public method and constructor comments are required | 3 | 107–110 |
MissingOverride | The method 'setId(int)' is missing an @Override annotation. | 3 | 107–110 |
MissingOverride | The method 'getIdOrder()' is missing an @Override annotation. | 3 | 117–120 |
CommentRequired | Public method and constructor comments are required | 3 | 117–120 |
CommentRequired | Public method and constructor comments are required | 3 | 127–130 |
MissingOverride | The method 'setIdOrder(int)' is missing an @Override annotation. | 3 | 127–130 |
MissingOverride | The method 'getEntryType()' is missing an @Override annotation. | 3 | 137–140 |
MissingOverride | The method 'setEntryType(EntryType)' is missing an @Override annotation. | 3 | 147–150 |
MissingOverride | The method 'getTitle()' is missing an @Override annotation. | 3 | 159–162 |
CommentRequired | Public method and constructor comments are required | 3 | 159–162 |
MissingOverride | The method 'setTitle(String)' is missing an @Override annotation. | 3 | 169–171 |
CommentRequired | Public method and constructor comments are required | 3 | 169–171 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 170–171 |
MissingOverride | The method 'clone()' is missing an @Override annotation. | 3 | 176–179 |
CloneMethodReturnTypeMustMatchClassName | The return type of the clone() method must be the class name when implements Cloneable | 3 | 176–179 |
MissingOverride | The method 'copy(int, Plugin)' is missing an @Override annotation. | 3 | 190–193 |
MissingOverride | The method 'copy(int, Plugin, String)' is missing an @Override annotation. | 3 | 206–236 |
CommentRequired | Public method and constructor comments are required | 3 | 243–246 |
MissingOverride | The method 'getHtml(Plugin, Locale)' is missing an @Override annotation. | 3 | 243–246 |
CommentRequired | Public method and constructor comments are required | 3 | 253–256 |
MissingOverride | The method 'getChilds(Plugin)' is missing an @Override annotation. | 3 | 253–256 |
MissingOverride | The method 'getParent(Plugin)' is missing an @Override annotation. | 3 | 263–266 |
CommentRequired | Public method and constructor comments are required | 3 | 263–266 |
MissingOverride | The method 'setSpecificParameters(HttpServletRequest)' is missing an @Override annotation. | 3 | 275–278 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificParameters' should not return any type except void linguistically | 3 | 275–278 |
LinguisticNaming | Linguistics Antipattern - The getter 'getSpecificParameters' should not return void linguistically | 3 | 290–292 |
MissingOverride | The method 'getSpecificParameters(HttpServletRequest, Map, Plugin)' is missing an @Override annotation. | 3 | 290–292 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 291–292 |
MissingOverride | The method 'loadSpecificParameters(Plugin)' is missing an @Override annotation. | 3 | 300–302 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 301–302 |
MissingOverride | The method 'createSpecificParameters(Plugin)' is missing an @Override annotation. | 3 | 310–312 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 311–312 |
MissingOverride | The method 'removeSpecificParameters(Plugin)' is missing an @Override annotation. | 3 | 320–322 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 321–322 |
MissingOverride | The method 'updateSpecificParameters(Plugin)' is missing an @Override annotation. | 3 | 330–332 |
UncommentedEmptyMethodBody | Document empty method body | 3 | 331–332 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 3 | 102–124 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 132–140 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 3 | 148–163 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 3 | 171–184 |
MissingOverride | The method 'findByFilter(EntryFilter, Plugin)' is missing an @Override annotation. | 3 | 193–218 |
NPathComplexity | The method 'getDaoFromFilter(String, EntryFilter, Plugin)' has an NPath complexity of 15552 | 3 | 227–308 |
CyclomaticComplexity | The method 'getDaoFromFilter(String, EntryFilter, Plugin)' has a cyclomatic complexity of 17. | 3 | 227–308 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 234 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 234 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 240 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 240 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 246 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 246 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 252 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 252 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 258 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 258 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 264 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 267 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 269 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 277 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 284 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 291 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 298 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 305 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
TooManyMethods | This class has too many methods, consider refactoring it. | 3 | 50–486 |
AvoidProtectedFieldInFinalClass | Avoid protected fields in a final class. Change to private or package access. | 3 | 53 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificEntry' should not return any type except void linguistically | 3 | 314–339 |
AvoidLiteralsInIfCondition | Avoid using Literals in Conditional Statements | 3 | 361 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 73 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 3 | 61–93 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 101–109 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 3 | 118–147 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 120 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 3 | 155–183 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 157 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
UnusedImports | Avoid unused imports such as 'fr.paris.lutece.portal.web.constants.Messages' | 4 | 47 |
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 90 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 3 | 58–90 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 60 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 98–106 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 3 | 115–144 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 117 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 3 | 152–179 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 154 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 72 |
CloneMethodMustImplementCloneable | clone() method should be implemented only if implementing Cloneable interface | 3 | 72–81 |
CloneMethodMustBePublic | clone() method must be public if the class implements Cloneable | 3 | 72–81 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(int, int, Plugin)' is missing an @Override annotation. | 3 | 95–116 |
MissingOverride | The method 'delete(int, int, Plugin)' is missing an @Override annotation. | 3 | 126–135 |
MissingOverride | The method 'insert(EntrySelectOption, Plugin)' is missing an @Override annotation. | 3 | 144–160 |
MissingOverride | The method 'store(EntrySelectOption, Plugin)' is missing an @Override annotation. | 3 | 168–181 |
MissingOverride | The method 'select(Plugin)' is missing an @Override annotation. | 3 | 189–210 |
MissingOverride | The method 'selectByEntry(int, Plugin)' is missing an @Override annotation. | 3 | 219–239 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
AvoidProtectedFieldInFinalClass | Avoid protected fields in a final class. Change to private or package access. | 3 | 50 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 83 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 3 | 61–93 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 101–109 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 3 | 118–147 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 120 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 3 | 155–183 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 157 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 3 | 61–80 |
MissingOverride | The method 'select(Plugin)' is missing an @Override annotation. | 3 | 88–109 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MethodReturnsInternalArray | Returning '_bytesImage' may expose an internal array. | 3 | 137 |
ArrayIsStoredDirectly | The user-supplied array 'image' is stored directly. | 3 | 144 |
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 201 |
NPathComplexity | The method 'setSpecificParameters(HttpServletRequest)' has an NPath complexity of 240 | 3 | 265–329 |
CyclomaticComplexity | The method 'setSpecificParameters(HttpServletRequest)' has a cyclomatic complexity of 11. | 3 | 265–329 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 276 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'load(IEntry, Plugin)' is missing an @Override annotation. | 3 | 61–99 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 63 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 107–115 |
MissingOverride | The method 'insert(IEntry, Plugin)' is missing an @Override annotation. | 3 | 124–159 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 126 |
MissingOverride | The method 'store(IEntry, Plugin)' is missing an @Override annotation. | 3 | 167–201 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 169 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 47 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 48 |
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'EntryUrlDisplayProperties(int, String)': enum constructors are implicitly private | 3 | 56–60 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 47 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 48 |
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'EntryUrlLinkProperties(int, String)': enum constructors are implicitly private | 3 | 56–60 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdQuicklinks': the method is declared in an interface type | 3 | 53 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdQuicklinks': the method is declared in an interface type | 3 | 59 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getId': the method is declared in an interface type | 3 | 64 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setId': the method is declared in an interface type | 3 | 70 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdOrder': the method is declared in an interface type | 3 | 75 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdOrder': the method is declared in an interface type | 3 | 81 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getIdParent': the method is declared in an interface type | 3 | 86 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setIdParent': the method is declared in an interface type | 3 | 92 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getParent': the method is declared in an interface type | 3 | 99 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getChilds': the method is declared in an interface type | 3 | 108 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getEntryType': the method is declared in an interface type | 3 | 113 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setEntryType': the method is declared in an interface type | 3 | 119 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getTitle': the method is declared in an interface type | 3 | 124 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setTitle': the method is declared in an interface type | 3 | 130 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getHtml': the method is declared in an interface type | 3 | 141 |
LinguisticNaming | Linguistics Antipattern - The getter 'getSpecificParameters' should not return void linguistically | 3 | 153 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'getSpecificParameters': the method is declared in an interface type | 3 | 153 |
LinguisticNaming | Linguistics Antipattern - The setter 'setSpecificParameters' should not return any type except void linguistically | 3 | 162 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'setSpecificParameters': the method is declared in an interface type | 3 | 162 |
CloneMethodMustImplementCloneable | clone() method should be implemented only if implementing Cloneable interface | 3 | 169 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'clone': the method is declared in an interface type | 3 | 169 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'copy': the method is declared in an interface type | 3 | 180 |
UnnecessaryModifier | Unnecessary modifier 'public' on method 'copy': the method is declared in an interface type | 3 | 193 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'loadSpecificParameters': the method is declared in an interface type | 3 | 201 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'createSpecificParameters': the method is declared in an interface type | 3 | 209 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'removeSpecificParameters': the method is declared in an interface type | 3 | 217 |
UnnecessaryModifier | Unnecessary modifiers 'public abstract' on method 'updateSpecificParameters': the method is declared in an interface type | 3 | 225 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
NonThreadSafeSingleton | Singleton is not thread safe | 3 | 99–103 |
MissingOverride | The method 'getWorkgroup()' is missing an @Override annotation. | 3 | 203–206 |
MissingOverride | The method 'getResourceId()' is missing an @Override annotation. | 3 | 211–214 |
MissingOverride | The method 'getResourceTypeCode()' is missing an @Override annotation. | 3 | 219–222 |
LinguisticNaming | Linguistics Antipattern - The getter 'getEntryXml' should not return void linguistically | 3 | 270–286 |
ProperCloneImplementation | Object clone() should be implemented with super.clone() | 2 | 294 |
CloneMethodMustBePublic | clone() method must be public if the class implements Cloneable | 3 | 294–304 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'getPermission()' is missing an @Override annotation. | 3 | 186–189 |
MissingOverride | The method 'setLocale(Locale)' is missing an @Override annotation. | 3 | 208–211 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'selectActionsByQuicklinksState(boolean, Plugin)' is missing an @Override annotation. | 3 | 58–81 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. | 3 | 79–93 |
AvoidSynchronizedAtMethodLevel | Use block level rather than method level synchronization | 3 | 102–120 |
MissingOverride | The method 'insert(Quicklinks, Plugin)' is missing an @Override annotation. | 3 | 102–120 |
MissingOverride | The method 'delete(int, Plugin)' is missing an @Override annotation. | 3 | 128–136 |
MissingOverride | The method 'store(Quicklinks, Plugin)' is missing an @Override annotation. | 3 | 144–159 |
MissingOverride | The method 'load(int, Plugin)' is missing an @Override annotation. | 3 | 168–191 |
MissingOverride | The method 'findAll(Plugin)' is missing an @Override annotation. | 3 | 199–223 |
MissingOverride | The method 'findbyFilter(QuicklinksFilter, Plugin)' is missing an @Override annotation. | 3 | 232–257 |
NPathComplexity | The method 'getDaoFromFilter(String, QuicklinksFilter, Plugin)' has an NPath complexity of 2048 | 3 | 266–342 |
CyclomaticComplexity | The method 'getDaoFromFilter(String, QuicklinksFilter, Plugin)' has a cyclomatic complexity of 14. | 3 | 266–342 |
UseStringBufferForStringAppends | Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings | 3 | 302 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 305 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 315 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 323–324 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 331 |
GuardLogStatement | Logger calls should be surrounded by log level guards. | 2 | 338 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MethodReturnsInternalArray | Returning '_arrayRoleKey' may expose an internal array. | 3 | 52 |
ArrayIsStoredDirectly | The user-supplied array 'arrayRoleKey' is stored directly. | 3 | 62 |
UseVarargs | Consider using varargs for methods or constructors which take an array the last parameter. | 4 | 62 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 1 | 46–161 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
FieldNamingConventions | The final field name '_nValue' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 46 |
FieldNamingConventions | The final field name '_strI18nKey' doesn't match '[a-z][a-zA-Z0-9]*' | 1 | 47 |
UnnecessaryModifier | Unnecessary modifier 'private' on constructor 'QuicklinksType(int, String)': enum constructors are implicitly private | 3 | 55–59 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'canBeRemoved(String)' is missing an @Override annotation. | 3 | 60–73 |
MissingOverride | The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. | 3 | 84–88 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 1 | 45–107 |
FieldNamingConventions | The constant name '_dao' doesn't match '[A-Z][A-Z_0-9]*' | 1 | 50 |
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the getInstance method if you want a default access modifier | 3 | 64–67 |
DefaultPackage | Use explicit scoping instead of the default package private level | 3 | 64–67 |
DefaultPackage | Use explicit scoping instead of the default package private level | 3 | 76–106 |
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the selectPageListbyName method if you want a default access modifier | 3 | 76–106 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ClassWithOnlyPrivateConstructorsShouldBeFinal | A class which only has private constructors should be final | 1 | 42–65 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'delete(int)' is missing an @Override annotation. | 3 | 51 |
MissingOverride | The method 'insert(Portlet)' is missing an @Override annotation. | 3 | 60 |
MissingOverride | The method 'load(int)' is missing an @Override annotation. | 3 | 70 |
MissingOverride | The method 'store(Portlet)' is missing an @Override annotation. | 3 | 88 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'getXml(HttpServletRequest)' is missing an @Override annotation. | 3 | 72–99 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 77–84 |
MissingOverride | The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. | 3 | 108–111 |
MissingOverride | The method 'remove()' is missing an @Override annotation. | 3 | 124–127 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'insert(Portlet)' is missing an @Override annotation. | 3 | 60–71 |
ShortVariable | Avoid variables with short names like p | 3 | 62 |
MissingOverride | The method 'delete(int)' is missing an @Override annotation. | 3 | 79–86 |
MissingOverride | The method 'load(int)' is missing an @Override annotation. | 3 | 96–111 |
MissingOverride | The method 'selectCountPortletByIdQuicklinks(int)' is missing an @Override annotation. | 3 | 119–135 |
MissingOverride | The method 'store(Portlet)' is missing an @Override annotation. | 3 | 143–153 |
ShortVariable | Avoid variables with short names like p | 3 | 145 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
AssignmentToNonFinalStatic | Possible unsafe assignment to a non-final static field in a constructor. | 3 | 52 |
CallSuperInConstructor | It is a good practice to call super() in a constructor | 3 | 57–63 |
NonThreadSafeSingleton | Singleton is not thread safe | 3 | 72–75 |
MissingOverride | The method 'getPortletTypeId()' is missing an @Override annotation. | 3 | 85–89 |
MissingOverride | The method 'getDAO()' is missing an @Override annotation. | 3 | 96–99 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
CommentDefaultAccessModifier | To avoid mistakes add a comment at the beginning of the EntryUrlService constructor if you want a default access modifier | 3 | 59–62 |
MissingOverride | The method 'getImageResource(int)' is missing an @Override annotation. | 3 | 81–94 |
MissingOverride | The method 'getResourceTypeId()' is missing an @Override annotation. | 3 | 101–104 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
CallSuperInConstructor | It is a good practice to call super() in a constructor | 3 | 77–80 |
MissingOverride | The method 'register()' is missing an @Override annotation. | 3 | 85–119 |
ShortVariable | Avoid variables with short names like rt | 3 | 87 |
ShortVariable | Avoid variables with short names like p | 3 | 93 |
MissingOverride | The method 'getResourceIdList(Locale)' is missing an @Override annotation. | 3 | 128–131 |
MissingOverride | The method 'getTitle(String, Locale)' is missing an @Override annotation. | 3 | 142–158 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
CommentRequired | Header comments are required | 3 | 38–60 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ImmutableField | Private field '_pageService' could be made final; it is only initialized in the declaration or constructor. | 3 | 107 |
MissingOverride | The method 'getInsertServiceSelectorUI(HttpServletRequest)' is missing an @Override annotation. | 3 | 118–158 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 205 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 206 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 207 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 208 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 210 |
LooseCoupling | Avoid using implementation types like 'HashMap'; use the interface instead | 3 | 239 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 128 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 202 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 245 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 332 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'fillTemplate(Map, PageData, int, HttpServletRequest)' is missing an @Override annotation. | 3 | 99–113 |
UselessStringValueOf | No need to call String.valueOf to append to a string. | 3 | 111 |
ShortVariable | Avoid variables with short names like in | 3 | 141 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 171–178 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
ExcessiveImports | A high number of imports can indicate a high degree of coupling within an object. | 3 | 34–1165 |
CyclomaticComplexity | The class 'QuicklinksJspBean' has a total cyclomatic complexity of 113 (highest 13). | 3 | 83–1165 |
ExcessiveClassLength | Avoid really long classes. | 3 | 83–1165 |
TooManyMethods | This class has too many methods, consider refactoring it. | 3 | 84–1165 |
UselessStringValueOf | No need to call String.valueOf to append to a string. | 3 | 216 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 250 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 306 |
CyclomaticComplexity | The method 'doModifyQuicklinks(HttpServletRequest)' has a cyclomatic complexity of 13. | 3 | 409–478 |
NPathComplexity | The method 'doModifyQuicklinks(HttpServletRequest)' has an NPath complexity of 384 | 3 | 409–478 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 416 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 422 |
ConfusingTernary | Avoid if (x != y) ..; else ..; | 3 | 467–475 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 685 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 686 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 688 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 734 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 735 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 737 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 739 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 809 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 856 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 858 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 907 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 946 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 987 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 1026 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 1075 |
PrematureDeclaration | Avoid declaring a variable if it is unreferenced before a possible exit point. | 3 | 1133 |
Rule | Violation | Priority | Ligne |
---|---|---|---|
MissingOverride | The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. | 3 | 89–117 |
MissingOverride | The method 'getModify(HttpServletRequest)' is missing an @Override annotation. | 3 | 126–167 |
MissingOverride | The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. | 3 | 176–215 |
MissingOverride | The method 'doModify(HttpServletRequest)' is missing an @Override annotation. | 3 | 224–263 |