/*********Program code and detailed error log along with persisten.xml *************/ public class CheckPOCTlinkMain { public static void main(String[] args) { try { System.out.println(" Starting insertion"); System.out.println(POCInsert.checktempInsert()); }catch (Exception ex) { System.out.println("Exception caught in main"); ex.printStackTrace(); } } } public class POCInsert { public static String checktempInsert(String env) { List employeeResult = new ArrayList(); try{ EmpDao empDao = (EmpDao) FXOPSDaoFactory.getDAOImpl("EmpDaoImpl"); empDao.insertRow(env); // This insert is failing while using jdbc.jar and working for ifxjdbc.jar System.out.println("Insertion completed in static method"); } catch ( Exception ex){ System.out.println(" Issue in checktempInsert"); ex.printStackTrace(); } return "Successfully done"; } } public interface EmpDao { void insertRow(String env) ; } public class EmpDaoImpl extends FXOPSDBAccess implements EmpDao { public void insertRow() { EntityManager em = getEntityManager(); try{ EntityTransaction transct = em.getTransaction(); Employee emp1= new Employee(); transct.begin(); System.out.println("Entity Object : "+ emp1); emp1.setName("Prafull test1"); emp1.setAge(10); emp1.setActive_status("A"); em.persist(emp1); if(transct != null) { transct.commit(); System.out.println("Row inserted for object"+ emp1); } else System.out.println("Testing: Null Transaction here"); }catch(Exception er){ System.out.println("Here Exception in setListByWssctrlNo : "+er.getMessage()); er.printStackTrace(); } finally{ em.close(); } } } public abstract class FXOPSDBAccess { protected EntityManagerFactory emf; protected EntityManager getEntityManager(){ if(emf == null){ emf = Persistence.createEntityManagerFactory("DALPOCService"); } EntityManager em = emf.createEntityManager(); Session session = ((JpaEntityManager) em.getDelegate()).getSession(); return em; } } persistent.xml: The drivers are same in both jar: unzip -l /app/informix/extend/krakatoa/jdbc.jar | grep -i driver 11860 05-11-11 17:52 com/informix/jdbc/IfxDriver.class unzip -l /app/informix/testjar/ifxjdbc.jar | grep -i driver 10527 02-15-00 18:06 com/informix/jdbc/IfxDriver.class Eclipselink persistence is not working using krakatoa/jdbc.jar for informix JVP: Problem is : While using the ifxjdbc.jar I am able to run my unit test program in informix DB JVP using Eclipselink JPA and able to insert the row in informix DB table employee, but same programe is failing if I am using the /app/informix/extend/krakatoa/jdbc.jar inplace of ifxjdbc.jar in JVM classpath. I am placing the below entry for driver in persistent.xml file Note: My requirement is to use only krakatoa/jdbc.jar and not ifxjdbc.jar due to IBM recommendations. Facing below error, any help on that will be highly appreciated: [EL Info]: 2012-04-24 03:52:32.643--ServerSession(1860215686)--property eclipselink.jdbc.password is deprecated, property javax.persistence.jdbc.password should be used instead. [EL Info]: 2012-04-24 03:52:37.634--ServerSession(1860215686)--EclipseLink, version: Eclipse Persistence Services - 2.1.2.v20101206-r8635 [EL Info]: 2012-04-24 03:52:38.915--ServerSession(1860215686)--file:/app/GFXDB_QA/Informix_11.70.FC4/prafull_testjar/chkpocMyInsert.jar_DALPOCService login successful Entity Object : Employee@54083e1e [EL Warning]: 2012-04-24 03:52:39.352--UnitOfWork(876281732)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.1.2.v20101206-r8635): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: System or internal error java.lang.NullPointerException Error Code: -79716 Call: INSERT INTO employee (NAME, AGE, ACTIVE_STATUS) VALUES (?, ?, ?) bind => [Prafull test1, 10, A] Query: InsertObjectQuery(Employee@54083e1e) Here Exception in setListByWssctrlNo : Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.1.2.v20101206-r8635): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: System or internal error java.lang.NullPointerException Error Code: -79716 Call: INSERT INTO employee (NAME, AGE, ACTIVE_STATUS) VALUES (?, ?, ?) bind => [Prafull test1, 10, A] Query: InsertObjectQuery(Employee@54083e1e) javax.persistence.RollbackException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.1.2.v20101206-r8635): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: System or internal error java.lang.NullPointerException Error Code: -79716 Call: INSERT INTO employee (NAME, AGE, ACTIVE_STATUS) VALUES (?, ?, ?) bind => [Prafull test1, 10, A] Query: InsertObjectQuery(Employee@54083e1e) at org.eclipse.persistence.internal.jpa.transaction.EntityTransactionImpl.commitInternal(EntityTransactionImpl.java:102) at org.eclipse.persistence.internal.jpa.transaction.EntityTransactionImpl.commit(EntityTransactionImpl.java:63) at EmpDaoImpl.insertRow(EmpDaoImpl.java:26) at POCInsert.checkMyInsert(POCInsert.java:14) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at informix.jvp.dbapplet.impl.SQLJParamImpl.invoke(SQLJParamImpl.java:960) at informix.jvp.dbapplet.impl.PerJavaUDRContext.invokeUDR(PerJavaUDRContext.java:249) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBApplet(DBAThreadImpl.java:479) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBWork(DBAThreadImpl.java:376) at informix.jvp.dbapplet.impl.DBAThreadImpl.run(DBAThreadImpl.java:324) Caused by: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.1.2.v20101206-r8635): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: System or internal error java.lang.NullPointerException Error Code: -79716 Call: INSERT INTO employee (NAME, AGE, ACTIVE_STATUS) VALUES (?, ?, ?) bind => [Prafull test1, 10, A] Query: InsertObjectQuery(Employee@54083e1e) at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:333) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:683) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:526) at org.eclipse.persistence.internal.sessions.AbstractSession.executeCall(AbstractSession.java:980) at org.eclipse.persistence.internal.sessions.IsolatedClientSession.executeCall(IsolatedClientSession.java:131) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:206) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:192) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.insertObject(DatasourceCallQueryMechanism.java:341) at org.eclipse.persistence.internal.queries.StatementQueryMechanism.insertObject(StatementQueryMechanism.java:162) at org.eclipse.persistence.internal.queries.StatementQueryMechanism.insertObject(StatementQueryMechanism.java:177) at org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.insertObjectForWrite(DatabaseQueryMechanism.java:465) at org.eclipse.persistence.queries.InsertObjectQuery.executeCommit(InsertObjectQuery.java:80) at org.eclipse.persistence.queries.InsertObjectQuery.executeCommitWithChangeSet(InsertObjectQuery.java:90) at org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.executeWriteWithChangeSet(DatabaseQueryMechanism.java:290) at org.eclipse.persistence.queries.WriteObjectQuery.executeDatabaseQuery(WriteObjectQuery.java:58) at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:740) at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:643) at org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWorkObjectLevelModifyQuery(ObjectLevelModifyQuery.java:108) at org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWork(ObjectLevelModifyQuery.java:85) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2908) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1291) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1273) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1233) at org.eclipse.persistence.internal.sessions.CommitManager.commitNewObjectsForClassWithChangeSet(CommitManager.java:224) at org.eclipse.persistence.internal.sessions.CommitManager.commitAllObjectsWithChangeSet(CommitManager.java:123) at org.eclipse.persistence.internal.sessions.AbstractSession.writeAllObjectsWithChangeSet(AbstractSession.java:3348) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1422) at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.commitToDatabase(RepeatableWriteUnitOfWork.java:610) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithChangeSet(UnitOfWorkImpl.java:1527) at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.commitRootUnitOfWork(RepeatableWriteUnitOfWork.java:264) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitAndResume(UnitOfWorkImpl.java:1148) at org.eclipse.persistence.internal.jpa.transaction.EntityTransactionImpl.commitInternal(EntityTransactionImpl.java:84) ... 12 more Caused by: java.sql.SQLException: System or internal error java.lang.NullPointerException at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:473) at com.informix.jdbc.IfxSqli.handleSocketException(IfxSqli.java:8982) at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2325) at com.informix.jdbc.IfxSqli.executePrepare(IfxSqli.java:1184) at com.informix.jdbc.IfxPreparedStatement.setupExecutePrepare(IfxPreparedStatement.java:320) at com.informix.jdbc.IfxPreparedStatement.processSQL(IfxPreparedStatement.java:300) at com.informix.jdbc.IfxPreparedStatement.(IfxPreparedStatement.java:170) at com.informix.jdbc.IfxSqliConnect.createPreparedStmt(IfxSqliConnect.java:6065) at com.informix.jdbc.IfxSqliConnect.prepareStatement(IfxSqliConnect.java:2084) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.prepareStatement(DatabaseAccessor.java:1401) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.prepareStatement(DatabaseAccessor.java:1350) at org.eclipse.persistence.internal.databaseaccess.DatabaseCall.prepareStatement(DatabaseCall.java:652) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:576) ... 42 more Caused by: java.lang.NullPointerException at com.informix.msg.sqlBundle.getBundleName(sqlBundle.java:38) at com.informix.util.IfxMessage.getBundleName(IfxMessage.java:150) at com.informix.util.IfxMessage.getMessage(IfxMessage.java:185) at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:398) at com.informix.jdbc.IfxSqli.setError(IfxSqli.java:2660) at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2498) at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2302) ... 52 more