Hi,
I have JAVA code to insert data in MySql DB. It works fine. But sometimes it throws nullpointer exception while calling executeUpdate() method.
It doesnt seems issue with connection as it is able to make connection but when calling execute update through preparedstatement it throws nullpointer.
Once error occurs it doesnt able to run without error untill i restart the whole application.
I am using driver mysql-connector-java-5.1.7-bin and DB version is mysql-5.1.48.
Is it any MySql bug?
Java code is:-
private boolean loadEventHeaderData(Connection connection, EventHeaderBean eventBean, String loadDate) throws DataLoaderException, SQLException
{
boolean insertHeaderFlag = false;
//int key=0;
java.sql.PreparedStatement cs = null;
ResultSet rs = null;
String insertEventHeader = "INSERT INTO Event_header (sequencenum, Event_name, Address, Customercode, Terminal_unique_id, Terminalid, Event_uri, Load_date, mac_address) values (?,?,?,?,?,?,?,str_to_date(?,'%d-%m-%Y %T'),?)";
try
{
cs = connection.prepareStatement(insertEventHeader);
cs.setString(1,eventBean.getSequencenum());
cs.setString(2,eventBean.getEventName());
cs.setString(3,eventBean.getAddress());
cs.setString(4,eventBean.getCustomerCode());
cs.setString(5,eventBean.getTerminalUniqueID());
cs.setString(6,eventBean.getTerminalID());
cs.setString(7,eventBean.getEventURI());
cs.setString(8,loadDate);
cs.setString(9,eventBean.getMacAddress());
logger.info("eventBean.getMacAddress()--------- "+eventBean.getMacAddress());
logger.info("insertEventHeader QUERY---- "+insertEventHeader.toString());
cs.executeUpdate();
insertHeaderFlag = true;
}catch(SQLException sqlex){
logger.error(PredUtil.getStackTrace(sqlex));
throw new DataLoaderException();
}catch (Exception ex){
logger.error(PredUtil.getStackTrace(ex));
throw new DataLoaderException();
}finally{
cs.close();
rs.close();
}
return insertHeaderFlag;
}
It throws error at line cs.executeUpdate();
Can someone please help me to understand the issue. If it is bug, which driver or DB should be used?
Thanks for your help in advance!
Regards
Archana
I have JAVA code to insert data in MySql DB. It works fine. But sometimes it throws nullpointer exception while calling executeUpdate() method.
It doesnt seems issue with connection as it is able to make connection but when calling execute update through preparedstatement it throws nullpointer.
Once error occurs it doesnt able to run without error untill i restart the whole application.
I am using driver mysql-connector-java-5.1.7-bin and DB version is mysql-5.1.48.
Is it any MySql bug?
Java code is:-
private boolean loadEventHeaderData(Connection connection, EventHeaderBean eventBean, String loadDate) throws DataLoaderException, SQLException
{
boolean insertHeaderFlag = false;
//int key=0;
java.sql.PreparedStatement cs = null;
ResultSet rs = null;
String insertEventHeader = "INSERT INTO Event_header (sequencenum, Event_name, Address, Customercode, Terminal_unique_id, Terminalid, Event_uri, Load_date, mac_address) values (?,?,?,?,?,?,?,str_to_date(?,'%d-%m-%Y %T'),?)";
try
{
cs = connection.prepareStatement(insertEventHeader);
cs.setString(1,eventBean.getSequencenum());
cs.setString(2,eventBean.getEventName());
cs.setString(3,eventBean.getAddress());
cs.setString(4,eventBean.getCustomerCode());
cs.setString(5,eventBean.getTerminalUniqueID());
cs.setString(6,eventBean.getTerminalID());
cs.setString(7,eventBean.getEventURI());
cs.setString(8,loadDate);
cs.setString(9,eventBean.getMacAddress());
logger.info("eventBean.getMacAddress()--------- "+eventBean.getMacAddress());
logger.info("insertEventHeader QUERY---- "+insertEventHeader.toString());
cs.executeUpdate();
insertHeaderFlag = true;
}catch(SQLException sqlex){
logger.error(PredUtil.getStackTrace(sqlex));
throw new DataLoaderException();
}catch (Exception ex){
logger.error(PredUtil.getStackTrace(ex));
throw new DataLoaderException();
}finally{
cs.close();
rs.close();
}
return insertHeaderFlag;
}
It throws error at line cs.executeUpdate();
Can someone please help me to understand the issue. If it is bug, which driver or DB should be used?
Thanks for your help in advance!
Regards
Archana