You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Li Lei (JIRA)" <ji...@apache.org> on 2019/02/27 02:35:00 UTC
[jira] [Created] (LOG4J2-2559) NullPointerException in
JdbcAppender.createAppender
Li Lei created LOG4J2-2559:
------------------------------
Summary: NullPointerException in JdbcAppender.createAppender
Key: LOG4J2-2559
URL: https://issues.apache.org/jira/browse/LOG4J2-2559
Project: Log4j 2
Issue Type: Bug
Components: Appenders, JDBC
Affects Versions: 2.11.1, 2.10.0, 2.11.2
Reporter: Li Lei
when I build the appender with 'JdbcAppender.createAppender' ,
in static class JdbcDatabaseManagerFactory, the method createManager has exception that is not catched. The code as follows:
{code:java}
//代码占位符
StringBuilder sb = (new StringBuilder("insert into ")).append(data.tableName).append(" (");
JdbcDatabaseManager.appendColumnNames("INSERT", data, sb);
sb.append(") values (");
int i = 1;
ColumnMapping[] arr$ = data.columnMappings;
int len$ = arr$.length;
int len$;
for(len$ = 0; len$ < len$; ++len$) {
ColumnMapping mapping = arr$[len$];
String mappingName = mapping.getName();
if (Strings.isNotEmpty(mapping.getLiteralValue())) {
JdbcDatabaseManager.logger().trace("Adding INSERT VALUES literal for ColumnMapping[{}]: {}={} ", i, mappingName, mapping.getLiteralValue());
sb.append(mapping.getLiteralValue());
} else if (Strings.isNotEmpty(mapping.getParameter())) {
JdbcDatabaseManager.logger().trace("Adding INSERT VALUES parameter for ColumnMapping[{}]: {}={} ", i, mappingName, mapping.getParameter());
sb.append(mapping.getParameter());
} else {
JdbcDatabaseManager.logger().trace("Adding INSERT VALUES parameter marker for ColumnMapping[{}]: {}={} ", i, mappingName, '?');
sb.append('?');
}
sb.append(',');
++i;
}
{code}
because I wanto use columnConfig, and the variable 'columnMappings' is null, so there mayby a NullPointerException here.....
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)