The following document contains the results of FindBugs Report
FindBugs Version is 1.3.9
Threshold is medium
Effort is min
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.application.ViewContext defines compareTo(ViewContext) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 95 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.HasDataValueBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 58 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 37 | High |
Method call in org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.setModelValue(HasText, DataModel, String) passes null for nonnull parameter of Integer.parseInt(String) | CORRECTNESS | NP_NULL_PARAM_DEREF | 69 | Medium |
Exception is caught when Exception is not thrown in org.kuali.student.common.ui.client.configurable.mvc.binding.HasTextBinding.setModelValue(HasText, DataModel, String) | STYLE | REC_CATCH_EXCEPTION | 116 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.HasValueBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 36 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Suspicious comparison of Integer references in org.kuali.student.common.ui.client.configurable.mvc.binding.ModelWidgetBindingSupport.nullsafeEquals(Data, Data) | CORRECTNESS | RC_REF_COMPARISON | 95 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityCompositeBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 38 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityGroupItemBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 34 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.MultiplicityItemBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 38 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.RichTextBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 29 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 41 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.configurable.mvc.binding.SelectItemWidgetBinding$1.exec(Widget) | STYLE | BC_UNCONFIRMED_CAST | 109 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Field TabbedSectionLayout.defaultView masks field in superclass org.kuali.student.common.ui.client.configurable.mvc.LayoutController | CORRECTNESS | MF_CLASS_MASKS_FIELD | 49 | Medium |
Nullcheck of section at line 339 of value previously dereferenced in org.kuali.student.common.ui.client.configurable.mvc.layouts.TabbedSectionLayout.addSection(String[], SectionView) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 326 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 87 | Medium |
Possible null pointer dereference of item in org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityComposite.addItem() | CORRECTNESS | NP_NULL_ON_SOME_PATH | 95 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityConfiguration.fieldMap | PERFORMANCE | URF_UNREAD_FIELD | 65 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup.createItem() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 174 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$ConditionChoices be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 489 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.student.common.ui.client.configurable.mvc.multiplicity.MultiplicityGroup$SwappableFieldsHelper be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 618 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.configurable.mvc.sections.MultiplicityHeader.title | PERFORMANCE | URF_UNREAD_FIELD | 36 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.INSTANCE isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 42 | High |
Method org.kuali.student.common.ui.client.configurable.mvc.sections.SectionBinding.setModelValue(Section, DataModel, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 110 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to tempContext in org.kuali.student.common.ui.client.mvc.Controller$3.exec(Boolean) | STYLE | DLS_DEAD_LOCAL_STORE | 122 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.links isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 25 | High |
Nullcheck of name at line 90 of value previously dereferenced in org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 90 | Medium |
Method org.kuali.student.common.ui.client.mvc.breadcrumb.BreadcrumbManager.updateLinks(String) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 74 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.mvc.history.HistoryManager.VIEW_ATR isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 54 | High |
Method org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 292 | Medium |
Method org.kuali.student.common.ui.client.mvc.history.HistoryManager.appendContext(String, ViewContext) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 291 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.util.PrintUtils.print(UIObject) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 22 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.StylishDropDown.mouseOver | PERFORMANCE | URF_UNREAD_FIELD | 53 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.containers.KSWrapper.appUrl | PERFORMANCE | URF_UNREAD_FIELD | 86 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Nullcheck of result at line 123 of value previously dereferenced in org.kuali.student.common.ui.client.widgets.containers.KSWrapper$1.onSuccess(Map) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 122 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.dialog.ButtonMessageDialog.title | PERFORMANCE | URF_UNREAD_FIELD | 16 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.dialog.ConfirmationDialog.title | PERFORMANCE | URF_UNREAD_FIELD | 38 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unused field: org.kuali.student.common.ui.client.widgets.field.layout.element.FieldElement.margin | PERFORMANCE | UUF_UNUSED_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.Header.updateable | PERFORMANCE | URF_UNREAD_FIELD | 35 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.HorizontalLayout.fieldArea | PERFORMANCE | URF_UNREAD_FIELD | 25 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.buttonPanel | PERFORMANCE | URF_UNREAD_FIELD | 24 | Medium |
Unread field: org.kuali.student.common.ui.client.widgets.field.layout.layouts.TableFieldLayout.top | PERFORMANCE | URF_UNREAD_FIELD | 23 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Possible null pointer dereference of w in org.kuali.student.common.ui.client.widgets.headers.KSDocumentHeader.addWidget(Widget) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 72 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.widgets.impl.KSDatePickerImpl.setValue(Date) may expose internal representation by storing an externally mutable object into KSDatePickerImpl.selectedDate | MALICIOUS_CODE | EI_EXPOSE_REP2 | 223 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.widgets.list.KSSelectedList.itemDataHelper isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 73 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from org.kuali.student.common.ui.client.mvc.ModelChangeEvent to org.kuali.student.common.ui.client.mvc.CollectionModelChangeEvent in org.kuali.student.common.ui.client.widgets.list.ModelListItems$1.onModelChange(ModelChangeEvent) | STYLE | BC_UNCONFIRMED_CAST | 82 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to w in org.kuali.student.common.ui.client.widgets.menus.KSListPanel.remove(int) | STYLE | DLS_DEAD_LOCAL_STORE | 74 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.indent | PERFORMANCE | URF_UNREAD_FIELD | 196 | Medium |
Unread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSBasicMenuImpl$MenuItemPanel.itemNum | PERFORMANCE | URF_UNREAD_FIELD | 197 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.indent | PERFORMANCE | URF_UNREAD_FIELD | 194 | Medium |
Unread field: org.kuali.student.common.ui.client.widgets.menus.impl.KSListMenuImpl$MenuItemPanel.itemNum | PERFORMANCE | URF_UNREAD_FIELD | 195 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to ids in org.kuali.student.common.ui.client.widgets.pagetable.GenericTableModel.setRows(List) | STYLE | DLS_DEAD_LOCAL_STORE | 178 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.widgets.progress.BlockingTask.hashCode() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 40 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unused field: org.kuali.student.common.ui.client.widgets.search.CollapsablePanel.buttonLabel | PERFORMANCE | UUF_UNUSED_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparator.compare(Row, Row) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 283 | Medium |
org.kuali.student.common.ui.client.widgets.search.FieldAscendingRowComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 268 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparator.compare(Row, Row) uses the same code for two branches | STYLE | DB_DUPLICATE_BRANCHES | 308 | Medium |
org.kuali.student.common.ui.client.widgets.search.FieldDescendingRowComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 293 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Non-virtual method call in org.kuali.student.common.ui.client.widgets.search.KSPicker$6.onSuccess(SearchResult) passes null for nonnull parameter of new org.kuali.student.common.ui.client.widgets.list.SearchResultListItems(List, LookupMetadata) | CORRECTNESS | NP_NULL_PARAM_DEREF_NONVIRTUAL | 324 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to value in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget.getDisplayValue() | STYLE | DLS_DEAD_LOCAL_STORE | 472 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$1.exec(Widget) | STYLE | BC_UNCONFIRMED_CAST | 411 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unchecked/unconfirmed cast from com.google.gwt.user.client.ui.Widget to org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract in org.kuali.student.common.ui.client.widgets.search.KSPicker$BasicWidget$6.exec(Widget) | STYLE | BC_UNCONFIRMED_CAST | 581 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should org.kuali.student.common.ui.client.widgets.search.KSPicker$SelectionContainerWidget be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 600 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.content | PERFORMANCE | URF_UNREAD_FIELD | 52 | Medium |
Unread field: org.kuali.student.common.ui.client.widgets.search.LinkPanel$PanelInfo.key | PERFORMANCE | URF_UNREAD_FIELD | 51 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unread field: org.kuali.student.common.ui.client.widgets.search.SearchResultsTable.PAGE_SIZE; should this field be static? | PERFORMANCE | SS_SHOULD_BE_STATIC | 51 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.widgets.table.scroll.CourseIdAscendingRowComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 103 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.widgets.table.scroll.CourseIdDescendingRowComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 112 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
instanceof will always return true in org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int), since all org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidget are instances of com.google.gwt.event.dom.client.HasChangeHandlers | STYLE | BC_VACUOUS_INSTANCEOF | 406 | Medium |
instanceof will always return true in org.kuali.student.common.ui.client.widgets.table.scroll.Table.updateTableCell(int, int), since all org.kuali.student.common.ui.client.widgets.table.scroll.TableCellWidget are instances of com.google.gwt.event.dom.client.HasClickHandlers | STYLE | BC_VACUOUS_INSTANCEOF | 397 | Medium |
Unread field: org.kuali.student.common.ui.client.widgets.table.scroll.Table.focusType | PERFORMANCE | URF_UNREAD_FIELD | 47 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.client.widgets.table.summary.SummaryTableSection.buildMultiplicityRows(DataModel, DataModel, SummaryTableMultiplicityFieldRow, List, int, Integer) ignores return value of String.replace(CharSequence, CharSequence) | CORRECTNESS | RV_RETURN_VALUE_IGNORED | 196 | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.student.common.ui.server.gwt.DataGwtServlet defines non-transient non-serializable instance field LOG | BAD_PRACTICE | SE_BAD_FIELD | Medium | |
Class org.kuali.student.common.ui.server.gwt.DataGwtServlet defines non-transient non-serializable instance field dataService | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet defines non-transient non-serializable instance field logger | BAD_PRACTICE | SE_BAD_FIELD | Medium | |
Method org.kuali.student.common.ui.server.gwt.LogRpcGwtServlet.sendLog(Map, String) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 40 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.student.common.ui.server.gwt.MessagesRpcGwtServlet defines non-transient non-serializable instance field serviceImpl | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.student.common.ui.server.gwt.MetadataRpcGwtServlet defines non-transient non-serializable instance field serviceImpl | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Return value of putIfAbsent is ignored, but searchResult is reused in org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet.cachingSearch(SearchRequest) | MT_CORRECTNESS | RV_RETURN_VALUE_OF_PUTIFABSENT_IGNORED | 70 | High |
Class org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet defines non-transient non-serializable instance field idTranslatorFilter | BAD_PRACTICE | SE_BAD_FIELD | Medium | |
Class org.kuali.student.common.ui.server.gwt.SearchDispatchRpcGwtServlet defines non-transient non-serializable instance field searchDispatcher | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.kuali.student.common.ui.server.gwt.ServerPropertiesRpcGwtServlet defines non-transient non-serializable instance field logger | BAD_PRACTICE | SE_BAD_FIELD | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.kuali.student.common.ui.server.gwt.old.AbstractBaseDataOrchestrationRpcGwtServlet.isAuthorized(PermissionType, Map) has Boolean return type and returns explicit null | BAD_PRACTICE | NP_BOOLEAN_RETURN_NULL | 124 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Method org.kuali.student.common.ui.theme.standard.client.CommonCssImpl.getCssString() concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 32 | Medium |