Fork me on GitHub

PMD Results

The following document contains the results of PMD 6.13.0.

Violations By Priority

Priority 3

fr/paris/lutece/plugins/contact/business/Contact.java

Rule Violation Line
NonThreadSafeSingleton Singleton is not thread safe 6569
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 161164

fr/paris/lutece/plugins/contact/business/ContactDAO.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 47459
MissingOverride The method 'insert(Contact, Plugin)' is missing an @Override annotation. 107118
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 129149
MissingOverride The method 'delete(Contact, Plugin)' is missing an @Override annotation. 159165
MissingOverride The method 'store(Contact, Plugin)' is missing an @Override annotation. 175187
MissingOverride The method 'selectContactsByListWithString(int, String, Plugin)' is missing an @Override annotation. 200216
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 225245
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 227
MissingOverride The method 'updateHits(int, int, Plugin)' is missing an @Override annotation. 257267
MissingOverride The method 'storeContactOrder(int, int, int, Plugin)' is missing an @Override annotation. 382390
MissingOverride The method 'selectContactIdByOrder(int, int, Plugin)' is missing an @Override annotation. 403424
ConfusingTernary Avoid if (x != y) ..; else ..; 411419
MissingOverride The method 'selectContactOrderById(int, int, Plugin)' is missing an @Override annotation. 437458
ConfusingTernary Avoid if (x != y) ..; else ..; 445453

fr/paris/lutece/plugins/contact/business/ContactList.java

Rule Violation Line
NonThreadSafeSingleton Singleton is not thread safe 7175
NonThreadSafeSingleton Singleton is not thread safe 7781
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 173176
CommentRequired Public method and constructor comments are required 239242
CommentRequired Public method and constructor comments are required 244247
CommentRequired Public method and constructor comments are required 249252
CommentRequired Public method and constructor comments are required 254257

fr/paris/lutece/plugins/contact/business/ContactListDAO.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 46723
MissingOverride The method 'insert(ContactList, Plugin)' is missing an @Override annotation. 116130
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 141164
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 173195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 175
MissingOverride The method 'selectByRoleKey(String, Plugin)' is missing an @Override annotation. 206228
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 208
MissingOverride The method 'countContactsForList(int, Plugin)' is missing an @Override annotation. 239254
MissingOverride The method 'countListsForContact(int, Plugin)' is missing an @Override annotation. 265280
MissingOverride The method 'listExists(int, Plugin)' is missing an @Override annotation. 291312
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 306309
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 306
MissingOverride The method 'selectContactsForList(int, Plugin)' is missing an @Override annotation. 323344
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 329
MissingOverride The method 'isAssigned(int, int, Plugin)' is missing an @Override annotation. 357379
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 373376
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 373
MissingOverride The method 'assign(int, int, Plugin)' is missing an @Override annotation. 391400
MissingOverride The method 'unAssign(int, int, Plugin)' is missing an @Override annotation. 412419
MissingOverride The method 'selectNotAssignedContactsFor(int, Plugin)' is missing an @Override annotation. 430451
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 436
MissingOverride The method 'selectAssignedListsFor(int, Plugin)' is missing an @Override annotation. 462483
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 468
MissingOverride The method 'selectNotAssignedListsFor(int, Plugin)' is missing an @Override annotation. 494516
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 500
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 526532
MissingOverride The method 'unassignContactsForList(int, Plugin)' is missing an @Override annotation. 542548
MissingOverride The method 'unassignListsForContact(int, Plugin)' is missing an @Override annotation. 558564
MissingOverride The method 'store(ContactList, Plugin)' is missing an @Override annotation. 574589
MissingOverride The method 'storeContactListOrder(int, int, Plugin)' is missing an @Override annotation. 604611
MissingOverride The method 'selectContactListIdByOrder(int, Plugin)' is missing an @Override annotation. 622642
ConfusingTernary Avoid if (x != y) ..; else ..; 629637
MissingOverride The method 'selectContactListOrderById(int, Plugin)' is missing an @Override annotation. 653673
ConfusingTernary Avoid if (x != y) ..; else ..; 660668
MissingOverride The method 'maxOrderContactList(Plugin)' is missing an @Override annotation. 682696
MissingOverride The method 'maxOrderContact(int, Plugin)' is missing an @Override annotation. 707722

fr/paris/lutece/plugins/contact/business/ContactListHome.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 45388

fr/paris/lutece/plugins/contact/business/ContactListRoleRemovalListener.java

Rule Violation Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5873
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 6770
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 67
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 8488

fr/paris/lutece/plugins/contact/business/IContactListDAO.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 44297

fr/paris/lutece/plugins/contact/service/ContactListPlugin.java

Rule Violation Line
MissingOverride The method 'init()' is missing an @Override annotation. 4851

fr/paris/lutece/plugins/contact/service/ContactListWorkgroupRemovalListener.java

Rule Violation Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5978
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 8993

fr/paris/lutece/plugins/contact/service/ContactPlugin.java

Rule Violation Line
MissingOverride The method 'init()' is missing an @Override annotation. 4851

fr/paris/lutece/plugins/contact/service/ContactWorkgroupRemovalListener.java

Rule Violation Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 92111
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 122126

fr/paris/lutece/plugins/contact/web/ContactApp.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34531
NPathComplexity The method 'getForm(HttpServletRequest)' has an NPath complexity of 14174208 214355
ExcessiveMethodLength Avoid really long methods. 214355
CyclomaticComplexity The method 'getForm(HttpServletRequest)' has a cyclomatic complexity of 31. 214355
NcssCount The method 'getForm(HttpServletRequest)' has a NCSS line count of 86. 214355
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 217
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 217
ConfusingTernary Avoid if (x != y) ..; else ..; 232
ConfusingTernary Avoid if (x != y) ..; else ..; 233
ConfusingTernary Avoid if (x != y) ..; else ..; 234
ConfusingTernary Avoid if (x != y) ..; else ..; 235
ConfusingTernary Avoid if (x != y) ..; else ..; 236
ConfusingTernary Avoid if (x != y) ..; else ..; 237
ConfusingTernary Avoid if (x != y) ..; else ..; 238
AvoidDuplicateLiterals The String literal "error" appears 6 times in this file; the first occurrence is on line 242 242
PositionLiteralsFirstInComparisons Position literals first in String comparisons 242
PositionLiteralsFirstInComparisons Position literals first in String comparisons 243
PositionLiteralsFirstInComparisons Position literals first in String comparisons 244
SimplifyBooleanExpressions Avoid unnecessary comparisons in boolean expressions 244
PositionLiteralsFirstInComparisons Position literals first in String comparisons 245
PositionLiteralsFirstInComparisons Position literals first in String comparisons 246
PositionLiteralsFirstInComparisons Position literals first in String comparisons 247
PositionLiteralsFirstInComparisons Position literals first in String comparisons 250
PositionLiteralsFirstInComparisons Position literals first in String comparisons 260
PositionLiteralsFirstInComparisons Position literals first in String comparisons 266
PositionLiteralsFirstInComparisons Position literals first in String comparisons 272
PositionLiteralsFirstInComparisons Position literals first in String comparisons 278
PositionLiteralsFirstInComparisons Position literals first in String comparisons 284
PositionLiteralsFirstInComparisons Position literals first in String comparisons 289
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 369
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 369
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 369
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 372
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 382
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 387
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 396
NPathComplexity The method 'doSendMessage(HttpServletRequest)' has an NPath complexity of 129024 417530
CyclomaticComplexity The method 'doSendMessage(HttpServletRequest)' has a cyclomatic complexity of 22. 417530
ExcessiveMethodLength Avoid really long methods. 417530
NcssCount The method 'doSendMessage(HttpServletRequest)' has a NCSS line count of 65. 417530
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 426
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 428
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 429
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 432
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 432
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 468
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 469
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 472
PositionLiteralsFirstInComparisons Position literals first in String comparisons 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 479
PositionLiteralsFirstInComparisons Position literals first in String comparisons 479
SimplifyBooleanExpressions Avoid unnecessary comparisons in boolean expressions 488
CollapsibleIfStatements These nested if statements could be combined 501506
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 509
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 509
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 525
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 525

fr/paris/lutece/plugins/contact/web/ContactJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 68329
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 123
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 164
AddEmptyString Do not add empty strings 166
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 183
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 183
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 241
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 241

fr/paris/lutece/plugins/contact/web/ContactListJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 71679
TooManyMethods This class has too many methods, consider refactoring it. 72679
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 148
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 173
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 173
AddEmptyString Do not add empty strings 175
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 193
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 193
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 213
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 216
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 217
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 218
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 219
PositionLiteralsFirstInComparisons Position literals first in String comparisons 221
PositionLiteralsFirstInComparisons Position literals first in String comparisons 221
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 248
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 252
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 372
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 372
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 405411
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 482
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 482
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 513519

Priority 4

fr/paris/lutece/plugins/contact/business/ContactList.java

Rule Violation Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 239242

fr/paris/lutece/plugins/contact/web/ContactJspBean.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.web.admin.PluginAdminPageJspBean' 48

fr/paris/lutece/plugins/contact/web/ContactListJspBean.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.template.AppTemplateService' 43
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.web.admin.PluginAdminPageJspBean' 51
UnusedImports Avoid unused imports such as 'fr.paris.lutece.util.html.HtmlTemplate' 56

Files

fr/paris/lutece/plugins/contact/business/Contact.java

Rule Violation Priority Line
NonThreadSafeSingleton Singleton is not thread safe 3 6569
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 3 161164

fr/paris/lutece/plugins/contact/business/ContactDAO.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 47459
MissingOverride The method 'insert(Contact, Plugin)' is missing an @Override annotation. 3 107118
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 129149
MissingOverride The method 'delete(Contact, Plugin)' is missing an @Override annotation. 3 159165
MissingOverride The method 'store(Contact, Plugin)' is missing an @Override annotation. 3 175187
MissingOverride The method 'selectContactsByListWithString(int, String, Plugin)' is missing an @Override annotation. 3 200216
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 3 225245
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 227
MissingOverride The method 'updateHits(int, int, Plugin)' is missing an @Override annotation. 3 257267
MissingOverride The method 'storeContactOrder(int, int, int, Plugin)' is missing an @Override annotation. 3 382390
MissingOverride The method 'selectContactIdByOrder(int, int, Plugin)' is missing an @Override annotation. 3 403424
ConfusingTernary Avoid if (x != y) ..; else ..; 3 411419
MissingOverride The method 'selectContactOrderById(int, int, Plugin)' is missing an @Override annotation. 3 437458
ConfusingTernary Avoid if (x != y) ..; else ..; 3 445453

fr/paris/lutece/plugins/contact/business/ContactList.java

Rule Violation Priority Line
NonThreadSafeSingleton Singleton is not thread safe 3 7175
NonThreadSafeSingleton Singleton is not thread safe 3 7781
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 3 173176
CommentRequired Public method and constructor comments are required 3 239242
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 239242
CommentRequired Public method and constructor comments are required 3 244247
CommentRequired Public method and constructor comments are required 3 249252
CommentRequired Public method and constructor comments are required 3 254257

fr/paris/lutece/plugins/contact/business/ContactListDAO.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 46723
MissingOverride The method 'insert(ContactList, Plugin)' is missing an @Override annotation. 3 116130
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 141164
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 3 173195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 175
MissingOverride The method 'selectByRoleKey(String, Plugin)' is missing an @Override annotation. 3 206228
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 208
MissingOverride The method 'countContactsForList(int, Plugin)' is missing an @Override annotation. 3 239254
MissingOverride The method 'countListsForContact(int, Plugin)' is missing an @Override annotation. 3 265280
MissingOverride The method 'listExists(int, Plugin)' is missing an @Override annotation. 3 291312
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 306309
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 306
MissingOverride The method 'selectContactsForList(int, Plugin)' is missing an @Override annotation. 3 323344
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 329
MissingOverride The method 'isAssigned(int, int, Plugin)' is missing an @Override annotation. 3 357379
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 373376
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 373
MissingOverride The method 'assign(int, int, Plugin)' is missing an @Override annotation. 3 391400
MissingOverride The method 'unAssign(int, int, Plugin)' is missing an @Override annotation. 3 412419
MissingOverride The method 'selectNotAssignedContactsFor(int, Plugin)' is missing an @Override annotation. 3 430451
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 436
MissingOverride The method 'selectAssignedListsFor(int, Plugin)' is missing an @Override annotation. 3 462483
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 468
MissingOverride The method 'selectNotAssignedListsFor(int, Plugin)' is missing an @Override annotation. 3 494516
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 500
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 526532
MissingOverride The method 'unassignContactsForList(int, Plugin)' is missing an @Override annotation. 3 542548
MissingOverride The method 'unassignListsForContact(int, Plugin)' is missing an @Override annotation. 3 558564
MissingOverride The method 'store(ContactList, Plugin)' is missing an @Override annotation. 3 574589
MissingOverride The method 'storeContactListOrder(int, int, Plugin)' is missing an @Override annotation. 3 604611
MissingOverride The method 'selectContactListIdByOrder(int, Plugin)' is missing an @Override annotation. 3 622642
ConfusingTernary Avoid if (x != y) ..; else ..; 3 629637
MissingOverride The method 'selectContactListOrderById(int, Plugin)' is missing an @Override annotation. 3 653673
ConfusingTernary Avoid if (x != y) ..; else ..; 3 660668
MissingOverride The method 'maxOrderContactList(Plugin)' is missing an @Override annotation. 3 682696
MissingOverride The method 'maxOrderContact(int, Plugin)' is missing an @Override annotation. 3 707722

fr/paris/lutece/plugins/contact/business/ContactListHome.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 45388

fr/paris/lutece/plugins/contact/business/ContactListRoleRemovalListener.java

Rule Violation Priority Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5873
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 6770
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 67
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 8488

fr/paris/lutece/plugins/contact/business/IContactListDAO.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 44297

fr/paris/lutece/plugins/contact/service/ContactListPlugin.java

Rule Violation Priority Line
MissingOverride The method 'init()' is missing an @Override annotation. 3 4851

fr/paris/lutece/plugins/contact/service/ContactListWorkgroupRemovalListener.java

Rule Violation Priority Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5978
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 8993

fr/paris/lutece/plugins/contact/service/ContactPlugin.java

Rule Violation Priority Line
MissingOverride The method 'init()' is missing an @Override annotation. 3 4851

fr/paris/lutece/plugins/contact/service/ContactWorkgroupRemovalListener.java

Rule Violation Priority Line
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 92111
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 122126

fr/paris/lutece/plugins/contact/web/ContactApp.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34531
NPathComplexity The method 'getForm(HttpServletRequest)' has an NPath complexity of 14174208 3 214355
ExcessiveMethodLength Avoid really long methods. 3 214355
CyclomaticComplexity The method 'getForm(HttpServletRequest)' has a cyclomatic complexity of 31. 3 214355
NcssCount The method 'getForm(HttpServletRequest)' has a NCSS line count of 86. 3 214355
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 217
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 217
ConfusingTernary Avoid if (x != y) ..; else ..; 3 232
ConfusingTernary Avoid if (x != y) ..; else ..; 3 233
ConfusingTernary Avoid if (x != y) ..; else ..; 3 234
ConfusingTernary Avoid if (x != y) ..; else ..; 3 235
ConfusingTernary Avoid if (x != y) ..; else ..; 3 236
ConfusingTernary Avoid if (x != y) ..; else ..; 3 237
ConfusingTernary Avoid if (x != y) ..; else ..; 3 238
AvoidDuplicateLiterals The String literal "error" appears 6 times in this file; the first occurrence is on line 242 3 242
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 242
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 243
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 244
SimplifyBooleanExpressions Avoid unnecessary comparisons in boolean expressions 3 244
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 245
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 246
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 247
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 250
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 260
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 266
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 272
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 278
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 284
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 289
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 369
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 369
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 369
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 372
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 382
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 387
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 396
NPathComplexity The method 'doSendMessage(HttpServletRequest)' has an NPath complexity of 129024 3 417530
CyclomaticComplexity The method 'doSendMessage(HttpServletRequest)' has a cyclomatic complexity of 22. 3 417530
ExcessiveMethodLength Avoid really long methods. 3 417530
NcssCount The method 'doSendMessage(HttpServletRequest)' has a NCSS line count of 65. 3 417530
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 426
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 428
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 429
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 432
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 432
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 468
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 469
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 472
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 478
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 479
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 479
SimplifyBooleanExpressions Avoid unnecessary comparisons in boolean expressions 3 488
CollapsibleIfStatements These nested if statements could be combined 3 501506
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 509
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 509
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 525
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 525

fr/paris/lutece/plugins/contact/web/ContactJspBean.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.web.admin.PluginAdminPageJspBean' 4 48
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 68329
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 123
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 164
AddEmptyString Do not add empty strings 3 166
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 183
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 183
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 241
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 241

fr/paris/lutece/plugins/contact/web/ContactListJspBean.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.template.AppTemplateService' 4 43
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.web.admin.PluginAdminPageJspBean' 4 51
UnusedImports Avoid unused imports such as 'fr.paris.lutece.util.html.HtmlTemplate' 4 56
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 71679
TooManyMethods This class has too many methods, consider refactoring it. 3 72679
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 148
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 173
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 173
AddEmptyString Do not add empty strings 3 175
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 193
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 193
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 213
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 216
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 217
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 218
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 219
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 221
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 221
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 248
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 252
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 372
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 372
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 405411
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 482
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 482
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 513519