The following document contains the results of FindBugs Report
FindBugs Version is 2.0.3
Threshold is medium
Effort is min
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
gboat2.approve.business.impl.ApproveRecordBusinessImpl.getApproveRecordItem(String, String[]) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 122 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
gboat2.approve.model.ApproveRecord.getApproveTime() may expose internal representation by returning ApproveRecord.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP | 97 | Medium |
gboat2.approve.model.ApproveRecord.getSubmitTime() may expose internal representation by returning ApproveRecord.submitTime | MALICIOUS_CODE | EI_EXPOSE_REP | 117 | Medium |
gboat2.approve.model.ApproveRecord.setApproveTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecord.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 101 | Medium |
gboat2.approve.model.ApproveRecord.setSubmitTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecord.submitTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 121 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
gboat2.approve.model.ApproveRecordHistory.getApproveSeal() may expose internal representation by returning ApproveRecordHistory.approveSeal | MALICIOUS_CODE | EI_EXPOSE_REP | 222 | Medium |
gboat2.approve.model.ApproveRecordHistory.getApproveTime() may expose internal representation by returning ApproveRecordHistory.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP | 123 | Medium |
gboat2.approve.model.ApproveRecordHistory.getSubmitTime() may expose internal representation by returning ApproveRecordHistory.submitTime | MALICIOUS_CODE | EI_EXPOSE_REP | 165 | Medium |
gboat2.approve.model.ApproveRecordHistory.setApproveSeal(byte[]) may expose internal representation by storing an externally mutable object into ApproveRecordHistory.approveSeal | MALICIOUS_CODE | EI_EXPOSE_REP2 | 226 | Medium |
gboat2.approve.model.ApproveRecordHistory.setApproveTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecordHistory.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 127 | Medium |
gboat2.approve.model.ApproveRecordHistory.setSubmitTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecordHistory.submitTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 169 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
gboat2.approve.model.ApproveRecordItem.getApproveSeal() may expose internal representation by returning ApproveRecordItem.approveSeal | MALICIOUS_CODE | EI_EXPOSE_REP | 172 | Medium |
gboat2.approve.model.ApproveRecordItem.getApproveTime() may expose internal representation by returning ApproveRecordItem.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP | 161 | Medium |
gboat2.approve.model.ApproveRecordItem.getCreateTime() may expose internal representation by returning ApproveRecordItem.createTime | MALICIOUS_CODE | EI_EXPOSE_REP | 151 | Medium |
gboat2.approve.model.ApproveRecordItem.setApproveSeal(byte[]) may expose internal representation by storing an externally mutable object into ApproveRecordItem.approveSeal | MALICIOUS_CODE | EI_EXPOSE_REP2 | 176 | Medium |
gboat2.approve.model.ApproveRecordItem.setApproveTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecordItem.approveTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 165 | Medium |
gboat2.approve.model.ApproveRecordItem.setCreateTime(Date) may expose internal representation by storing an externally mutable object into ApproveRecordItem.createTime | MALICIOUS_CODE | EI_EXPOSE_REP2 | 155 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in gboat2.approve.service.impl.ApproveServiceImpl.complete(String, String, Map): String.getBytes() | I18N | DM_DEFAULT_ENCODING | 224 | High |
Found reliance on default encoding in gboat2.approve.service.impl.ApproveServiceImpl.doNext(String, String, Map): String.getBytes() | I18N | DM_DEFAULT_ENCODING | 264 | High |
Nullcheck of recordObject at line 359 of value previously dereferenced in gboat2.approve.service.impl.ApproveServiceImpl.saveCallbackHistory(UserSession, String, Object) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 356 | Medium |
Nullcheck of recordObject at line 306 of value previously dereferenced in gboat2.approve.service.impl.ApproveServiceImpl.saveSubmitHistory(UserSession, String, Object, Map) | CORRECTNESS | RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE | 303 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in gboat2.approve.utils.ApproveSealUtil.approveSeal2Str(byte[]): new String(byte[], int, int) | I18N | DM_DEFAULT_ENCODING | 32 | High |
Possible null pointer dereference of in in gboat2.approve.utils.ApproveSealUtil.approveSeal2Str(byte[]) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 31 | Medium |
Possible null pointer dereference of reader in gboat2.approve.utils.ApproveSealUtil.clob2String(Clob) on exception path | CORRECTNESS | NP_NULL_ON_SOME_PATH_EXCEPTION | 59 | Medium |
gboat2.approve.utils.ApproveSealUtil.clob2String(Clob) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 53 | Medium |