PMD report
Problems found
#
File
Line
Problem
1
sf\xwsf\server\ActionBase.java
31
Private field '_viewable' could be made final; it is only initialized in the declaration or constructor.
2
sf\xwsf\server\ActionBase.java
39
An empty method in an abstract class should be abstract instead
3
sf\xwsf\server\ActionBase.java
44
An empty method in an abstract class should be abstract instead
4
sf\xwsf\server\ApplicationController.java
65
The class 'ApplicationController' has a Cyclomatic Complexity of 3 (Highest = 12).
5
sf\xwsf\server\ApplicationController.java
93
The method 'handleRequest' has a Cyclomatic Complexity of 12.
6
sf\xwsf\server\ApplicationController.java
132
Avoid if (x != y) ..; else ..;
7
sf\xwsf\server\ApplicationController.java
278
Position literals first in String comparisons
8
sf\xwsf\server\ApplicationController.java
315
Switch statements should have a default label
9
sf\xwsf\server\CompositionException.java
36
Private field '_locations' could be made final; it is only initialized in the declaration or constructor.
10
sf\xwsf\server\CompoundComposition.java
34
Private field '_compositions' could be made final; it is only initialized in the declaration or constructor.
11
sf\xwsf\server\CompoundComposition.java
92
Private field '_delimiter' could be made final; it is only initialized in the declaration or constructor.
12
sf\xwsf\server\DataConnector.java
42
Private field '_propertyName' could be made final; it is only initialized in the declaration or constructor.
13
sf\xwsf\server\DataConnector.java
65
An empty method in an abstract class should be abstract instead
14
sf\xwsf\server\DataConnector.java
85
Overridable method 'refreshData' called during object construction
15
sf\xwsf\server\DataConnector.java
99
An empty method in an abstract class should be abstract instead
16
sf\xwsf\server\DataConnector.java
104
An empty method in an abstract class should be abstract instead
17
sf\xwsf\server\DataConnector.java
125
Use equals() to compare object references.
18
sf\xwsf\server\DataConnector.java
147
Avoid if (x != y) ..; else ..;
19
sf\xwsf\server\DataConnector.java
148
Avoid if (x != y) ..; else ..;
20
sf\xwsf\server\DataConnector.java
161
Use equals() to compare object references.
21
sf\xwsf\server\DataConnector.java
166
Use equals() to compare object references.
22
sf\xwsf\server\DataConnector.java
178
Use equals() to compare object references.
23
sf\xwsf\server\DataConnector.java
210
An empty method in an abstract class should be abstract instead
24
sf\xwsf\server\DataInputHandler.java
41
Private field '_dataConnector' could be made final; it is only initialized in the declaration or constructor.
25
sf\xwsf\server\DataInputHandler.java
44
Private field '_parent' could be made final; it is only initialized in the declaration or constructor.
26
sf\xwsf\server\DataInputHandler.java
147
Document empty method
27
sf\xwsf\server\FormatterUsingAdapter.java
30
Avoid unused private fields such as '_adapter'.
28
sf\xwsf\server\FormatterUsingAdapter.java
30
Perhaps '_adapter' could be replaced by a local variable.
29
sf\xwsf\server\FormatterUsingAdapter.java
30
Private field '_adapter' could be made final; it is only initialized in the declaration or constructor.
30
sf\xwsf\server\GenericViewAdapter.java
33
Private field '_applicationContext' could be made final; it is only initialized in the declaration or constructor.
31
sf\xwsf\server\GenericViewAdapter.java
59
Avoid if (x != y) ..; else ..;
32
sf\xwsf\server\GenericViewAdapter.java
85
Avoid reassigning parameters such as 'mode'
33
sf\xwsf\server\PrintfFormatter.java
30
Private field '_adapter' could be made final; it is only initialized in the declaration or constructor.
34
sf\xwsf\server\PrintfFormatter.java
32
Private field '_propertiesList' could be made final; it is only initialized in the declaration or constructor.
35
sf\xwsf\server\PrintfFormatter.java
34
Private field '_format' could be made final; it is only initialized in the declaration or constructor.
36
sf\xwsf\server\PrintfFormatter.java
36
Private field '_stringBuilder' could be made final; it is only initialized in the declaration or constructor.
37
sf\xwsf\server\PrintfFormatter.java
38
Private field '_jfmt' could be made final; it is only initialized in the declaration or constructor.
38
sf\xwsf\server\ProtoView.java
50
Private field '_hrefUri' could be made final; it is only initialized in the declaration or constructor.
39
sf\xwsf\server\ProtoView.java
53
Private field '_arguments' could be made final; it is only initialized in the declaration or constructor.
40
sf\xwsf\server\ProtoView.java
56
Private field '_nameOfArgument' could be made final; it is only initialized in the declaration or constructor.
41
sf\xwsf\server\ProtoView.java
106
Avoid if (x != y) ..; else ..;
42
sf\xwsf\server\ProtoView.java
126
Avoid if (x != y) ..; else ..;
43
sf\xwsf\server\ProtoView.java
141
Document empty method
44
sf\xwsf\server\ProtoView.java
151
Document empty method
45
sf\xwsf\server\ProtoView.java
160
Document empty method
46
sf\xwsf\server\ProtoView.java
164
Document empty method
47
sf\xwsf\server\RegexBasedComposition.java
34
The class 'RegexBasedComposition' has a Cyclomatic Complexity of 2 (Highest = 11).
48
sf\xwsf\server\RegexBasedComposition.java
51
Private field '_applicationContext' could be made final; it is only initialized in the declaration or constructor.
49
sf\xwsf\server\RegexBasedComposition.java
58
An empty method in an abstract class should be abstract instead
50
sf\xwsf\server\RegexBasedComposition.java
68
The method 'setState' has a Cyclomatic Complexity of 11.
51
sf\xwsf\server\RegexBasedComposition.java
83
Position literals first in String comparisons
52
sf\xwsf\server\RegexBasedComposition.java
125
An empty method in an abstract class should be abstract instead
53
sf\xwsf\server\RegexBasedComposition.java
130
An empty method in an abstract class should be abstract instead
54
sf\xwsf\server\RegexBasedComposition.java
133
Avoid unused local variables such as 'update'.
55
sf\xwsf\server\RegexBasedComposition.java
142
An empty method in an abstract class should be abstract instead
56
sf\xwsf\server\RegexBasedComposition.java
152
An empty method in an abstract class should be abstract instead
57
sf\xwsf\server\RegexBasedComposition.java
159
Position literals first in String comparisons
58
sf\xwsf\server\RegexBasedComposition.java
175
An empty method in an abstract class should be abstract instead
59
sf\xwsf\server\RegexBasedComposition.java
180
An empty method in an abstract class should be abstract instead
60
sf\xwsf\server\RegexBasedComposition.java
185
An empty method in an abstract class should be abstract instead
61
sf\xwsf\server\RegexTokenType.java
7
An empty method in an abstract class should be abstract instead
62
sf\xwsf\server\ServerConstants.java
25
An Interface should be used only to model a behaviour; consider converting this to a class.
63
sf\xwsf\server\SharedVariable.java
100
Singleton is not thread safe
64
sf\xwsf\server\SharedVariable.java
139
Avoid empty finally blocks
65
sf\xwsf\server\SharedVariable.java
163
Use equals() to compare object references.
66
sf\xwsf\server\View.java
124
The class 'View' has a Cyclomatic Complexity of 2 (Highest = 10).
67
sf\xwsf\server\View.java
140
Private field '_refreshableItems' could be made final; it is only initialized in the declaration or constructor.
68
sf\xwsf\server\View.java
142
Private field '_children' could be made final; it is only initialized in the declaration or constructor.
69
sf\xwsf\server\View.java
181
Avoid if (x != y) ..; else ..;
70
sf\xwsf\server\View.java
209
Document empty method
71
sf\xwsf\server\View.java
281
Avoid if (x != y) ..; else ..;
72
sf\xwsf\server\View.java
384
Avoid if (x != y) ..; else ..;
73
sf\xwsf\server\View.java
534
Avoid reassigning parameters such as 'create'
74
sf\xwsf\server\View.java
534
The method 'checkArgument' has a Cyclomatic Complexity of 10.
75
sf\xwsf\server\View.java
540
Avoid if (x != y) ..; else ..;
76
sf\xwsf\server\View.java
542
Position literals first in String comparisons
77
sf\xwsf\server\View.java
545
Position literals first in String comparisons
78
sf\xwsf\server\View.java
558
Position literals first in String comparisons
79
sf\xwsf\server\View.java
561
Position literals first in String comparisons
80
sf\xwsf\server\View.java
565
Avoid if (x != y) ..; else ..;
81
sf\xwsf\server\View.java
630
Avoid if (x != y) ..; else ..;
82
sf\xwsf\server\View.java
757
These nested if statements could be combined
83
sf\xwsf\server\ViewAdapter.java
92
An empty method in an abstract class should be abstract instead
84
sf\xwsf\server\ViewAdapter.java
101
Document empty method
85
sf\xwsf\server\ViewAdapter.java
106
Document empty method
86
sf\xwsf\server\ViewAdapter.java
128
An empty method in an abstract class should be abstract instead
87
sf\xwsf\server\ViewAdapter.java
136
Private field '_oldNewMap' could be made final; it is only initialized in the declaration or constructor.
88
sf\xwsf\server\ViewAdapter.java
138
Document empty constructor
89
sf\xwsf\server\ViewArgument.java
29
The class 'ViewArgument' has a Cyclomatic Complexity of 3 (Highest = 11).
90
sf\xwsf\server\ViewArgument.java
125
The method 'setProperty' has a Cyclomatic Complexity of 11.
91
sf\xwsf\server\ViewArgument.java
153
Avoid if (x != y) ..; else ..;
92
sf\xwsf\server\ViewArgument.java
153
Use equals() to compare object references.
93
sf\xwsf\server\ViewArgument.java
191
A switch statement does not contain a break
94
sf\xwsf\server\ViewArgument.java
213
Avoid reassigning parameters such as 'copyOnWriteTracer'
95
sf\xwsf\server\ViewArgument.java
213
Avoid reassigning parameters such as 'copyOnWriteTracer'
96
sf\xwsf\server\ViewFactory.java
51
A class which only has private constructors should be final
97
sf\xwsf\server\ViewFactory.java
125
Avoid if (x != y) ..; else ..;
98
sf\xwsf\server\ViewFactory.java
134
Avoid if (x != y) ..; else ..;
99
sf\xwsf\server\ViewMaker.java
45
Private field 'inputViewXmlURI' could be made final; it is only initialized in the declaration or constructor.
100
sf\xwsf\server\ViewMaker.java
47
Private field 'applicationContext' could be made final; it is only initialized in the declaration or constructor.
101
sf\xwsf\server\ViewMaker.java
49
Private field 'applicationCache' could be made final; it is only initialized in the declaration or constructor.
102
sf\xwsf\server\ViewMaker.java
51
Private field 'parentViewable' could be made final; it is only initialized in the declaration or constructor.
103
sf\xwsf\server\ViewMaker.java
53
Private field 'arguments' could be made final; it is only initialized in the declaration or constructor.
104
sf\xwsf\server\ViewMaker.java
63
Private field 'dynamicView' could be made final; it is only initialized in the declaration or constructor.
105
sf\xwsf\server\ViewMaker.java
65
Private field 'transformer' could be made final; it is only initialized in the declaration or constructor.
106
sf\xwsf\server\ViewPlaceholder.java
40
Private field '_parentViewable' could be made final; it is only initialized in the declaration or constructor.
107
sf\xwsf\server\ViewPlaceholder.java
80
Private field '_hrefUri' could be made final; it is only initialized in the declaration or constructor.
108
sf\xwsf\server\ViewPlaceholder.java
84
Private field '_applicationContext' could be made final; it is only initialized in the declaration or constructor.
109
sf\xwsf\server\ViewPlaceholder.java
88
Private field '_arguments' could be made final; it is only initialized in the declaration or constructor.
110
sf\xwsf\server\XSLTViewController.java
56
Avoid unused constructor parameters such as 'view'.
111
sf\xwsf\server\XSLTViewController.java
56
Document empty constructor
112
sf\xwsf\server\XSLTViewController.java
105
Deeply nested if..then statements are hard to read
113
sf\xwsf\server\events\XWSFEvent.java
36
This abstract class does not have any abstract methods
114
sf\xwsf\server\events\XWSFEvent.java
53
An empty method in an abstract class should be abstract instead
115
sf\xwsf\server\messages\ClearWidgetMessage.java
21
Avoid concatenating nonliterals in a StringBuffer constructor or append().
116
sf\xwsf\server\messages\ClearWidgetMessage.java
22
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
117
sf\xwsf\server\messages\DisposeMessage.java
21
Avoid concatenating nonliterals in a StringBuffer constructor or append().
118
sf\xwsf\server\messages\EnableWidgetMessage.java
7
Private field '_enable' could be made final; it is only initialized in the declaration or constructor.
119
sf\xwsf\server\messages\EnableWidgetMessage.java
24
Avoid concatenating nonliterals in a StringBuffer constructor or append().
120
sf\xwsf\server\messages\MakeWidgetForwardMessage.java
21
Avoid concatenating nonliterals in a StringBuffer constructor or append().
121
sf\xwsf\server\messages\MakeWidgetForwardMessage.java
22
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
122
sf\xwsf\server\messages\MarkErrorMessage.java
7
Private field '_start' could be made final; it is only initialized in the declaration or constructor.
123
sf\xwsf\server\messages\MarkErrorMessage.java
9
Private field '_length' could be made final; it is only initialized in the declaration or constructor.
124
sf\xwsf\server\messages\MarkErrorMessage.java
11
Private field '_font' could be made final; it is only initialized in the declaration or constructor.
125
sf\xwsf\server\messages\MarkErrorMessage.java
30
Avoid concatenating nonliterals in a StringBuffer constructor or append().
126
sf\xwsf\server\messages\MarkErrorMessage.java
30
StringBuffer constructor is initialized with size 16, but has at least 41 characters appended.
127
sf\xwsf\server\messages\MarkErrorMessage.java
31
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
128
sf\xwsf\server\messages\MarkErrorMessage.java
32
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
129
sf\xwsf\server\messages\MarkErrorMessage.java
33
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
130
sf\xwsf\server\messages\MarkErrorMessage.java
34
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
131
sf\xwsf\server\messages\Message.java
12
An empty method in an abstract class should be abstract instead
132
sf\xwsf\server\messages\RefreshDateTimeMessage.java
28
Avoid concatenating nonliterals in a StringBuffer constructor or append().
133
sf\xwsf\server\messages\RefreshDateTimeMessage.java
28
StringBuffer constructor is initialized with size 16, but has at least 69 characters appended.
134
sf\xwsf\server\messages\RefreshDateTimeMessage.java
29
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
135
sf\xwsf\server\messages\RefreshDateTimeMessage.java
30
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
136
sf\xwsf\server\messages\RefreshDateTimeMessage.java
31
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
137
sf\xwsf\server\messages\RefreshDateTimeMessage.java
32
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
138
sf\xwsf\server\messages\RefreshDateTimeMessage.java
33
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
139
sf\xwsf\server\messages\RefreshDateTimeMessage.java
34
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
140
sf\xwsf\server\messages\RefreshDateTimeMessage.java
35
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
141
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
7
Private field '_viewURL' could be made final; it is only initialized in the declaration or constructor.
142
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
9
Private field '_parentWidgetId' could be made final; it is only initialized in the declaration or constructor.
143
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
11
Private field '_innerViewDefinition' could be made final; it is only initialized in the declaration or constructor.
144
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
31
Avoid concatenating nonliterals in a StringBuffer constructor or append().
145
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
31
StringBuffer constructor is initialized with size 16, but has at least 31 characters appended.
146
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
32
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
147
sf\xwsf\server\messages\RefreshViewPlaceHolderMessage.java
33
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
148
sf\xwsf\server\messages\RefreshWidgetMessage.java
7
Private field '_aspect' could be made final; it is only initialized in the declaration or constructor.
149
sf\xwsf\server\messages\RefreshWidgetMessage.java
9
Private field '_data' could be made final; it is only initialized in the declaration or constructor.
150
sf\xwsf\server\messages\RefreshWidgetMessage.java
32
Avoid concatenating nonliterals in a StringBuffer constructor or append().
151
sf\xwsf\server\messages\RefreshWidgetMessage.java
32
StringBuffer constructor is initialized with size 16, but has at least 25 characters appended.
152
sf\xwsf\server\messages\RefreshWidgetMessage.java
33
StringBuffer.append is called 2 consecutive times with literal Strings. Use a single append with a single String.
153
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
32
The class 'RefreshableNamedQuery' has a Cyclomatic Complexity of 6 (Highest = 10).
154
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
34
Private field '_uniqueResult' could be made final; it is only initialized in the declaration or constructor.
155
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
36
Avoid unused constructor parameters such as 'deferred'.
156
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
44
The method 'refreshView' has a Cyclomatic Complexity of 10.
157
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
57
Avoid if (x != y) ..; else ..;
158
sf\xwsf\server\refreshable\RefreshableNamedQuery.java
71
Avoid if (x != y) ..; else ..;
159
sf\xwsf\server\refreshable\RefreshableQuery.java
53
An empty method in an abstract class should be abstract instead
160
sf\xwsf\server\refreshable\RefreshableQuery.java
58
An empty method in an abstract class should be abstract instead
161
sf\xwsf\server\refreshable\RefreshableQuery.java
66
Private field '_name' could be made final; it is only initialized in the declaration or constructor.
162
sf\xwsf\server\refreshable\RefreshableQuery.java
121
An empty method in an abstract class should be abstract instead
163
sf\xwsf\server\refreshable\RefreshableQuery.java
122
Document empty method
164
sf\xwsf\server\refreshable\RefreshableSharedVariable.java
40
Private field '_sharedVariable' could be made final; it is only initialized in the declaration or constructor.
165
sf\xwsf\server\refreshable\RefreshableSharedVariable.java
47
Private field '_writable' could be made final; it is only initialized in the declaration or constructor.
166
sf\xwsf\server\refreshable\RefreshableSharedVariable.java
73
Overridable method 'refreshView' called during object construction
167
sf\xwsf\server\refreshable\RefreshableWidgetData.java
190
Avoid if (x != y) ..; else ..;
168
sf\xwsf\server\refreshable\RefreshableWidgetData.java
234
Avoid reassigning parameters such as 'data'
169
sf\xwsf\server\refreshable\RefreshableWidgetData.java
234
Avoid reassigning parameters such as 'data'
170
sf\xwsf\server\refreshable\RefreshableWidgetData.java
336
Avoid if (x != y) ..; else ..;
171
sf\xwsf\server\renderer\DataItemizer.java
34
Private field '_renderer' could be made final; it is only initialized in the declaration or constructor.
172
sf\xwsf\server\renderer\DataRendererUsingViewPlaceholder.java
41
Private field '_instantiatedViewMap' could be made final; it is only initialized in the declaration or constructor.
173
sf\xwsf\server\renderer\DataRendererUsingViewPlaceholder.java
45
Private field '_viewPlaceholder' could be made final; it is only initialized in the declaration or constructor.
174
sf\xwsf\server\renderer\DataRendererUsingViewPlaceholder.java
47
Private field '_widget' could be made final; it is only initialized in the declaration or constructor.
175
sf\xwsf\server\renderer\DataRendererUsingViewPlaceholder.java
77
Avoid unnecessary comparisons in boolean expressions
176
sf\xwsf\server\renderer\DataRendererUsingWidgetSetter.java
54
Private field 'parent' could be made final; it is only initialized in the declaration or constructor.
177
sf\xwsf\server\renderer\DataRendererUsingWidgetSetter.java
56
Private field 'aspect' could be made final; it is only initialized in the declaration or constructor.
178
sf\xwsf\server\util\ClassMethodTool.java
17
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning.
179
sf\xwsf\server\util\ClassMethodTool.java
39
Avoid if (x != y) ..; else ..;
180
sf\xwsf\server\util\ClassTool.java
34
The class 'ClassTool' has a Cyclomatic Complexity of 4 (Highest = 10).
181
sf\xwsf\server\util\ClassTool.java
55
The method 'getMethod' has a Cyclomatic Complexity of 10.
182
sf\xwsf\server\util\ClassTool.java
64
Deeply nested if..then statements are hard to read
183
sf\xwsf\server\util\ClassTool.java
204
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty()
184
sf\xwsf\server\util\ClassTool.java
253
Use equals() to compare object references.
185
sf\xwsf\server\util\Logger.java
1
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning.
186
sf\xwsf\server\util\Logger.java
16
Static DateFormatter objects should be accessed in a synchronized manner
187
sf\xwsf\server\util\Logger.java
23
The String literal " : " appears 4 times in this file; the first occurrence is on line 23
188
sf\xwsf\server\util\Logger.java
29
Static DateFormatter objects should be accessed in a synchronized manner
189
sf\xwsf\server\util\Logger.java
41
Static DateFormatter objects should be accessed in a synchronized manner
190
sf\xwsf\server\util\Logger.java
53
Static DateFormatter objects should be accessed in a synchronized manner
191
sf\xwsf\server\util\ViewManipulator.java
12
Private field 'view' could be made final; it is only initialized in the declaration or constructor.
192
sf\xwsf\server\util\XSLTDebugHelper.java
22
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning.
193
sf\xwsf\server\util\XSLTDebugHelper.java
33
Document empty constructor
194
sf\xwsf\server\util\XSLTDebugHelper.java
39
The String literal " : " appears 7 times in this file; the first occurrence is on line 39
195
sf\xwsf\server\widget\AutoCompleter.java
40
Private field 'queryParameters' could be made final; it is only initialized in the declaration or constructor.
196
sf\xwsf\server\widget\AutoCompleter.java
42
Private field 'query' could be made final; it is only initialized in the declaration or constructor.
197
sf\xwsf\server\widget\DragSource.java
36
Private field '_widget' could be made final; it is only initialized in the declaration or constructor.
198
sf\xwsf\server\widget\DropTarget.java
34
Private field '_widget' could be made final; it is only initialized in the declaration or constructor.
199
sf\xwsf\server\widget\QueryParameter.java
31
Private field '_name' could be made final; it is only initialized in the declaration or constructor.