Cayenne null pointer error when trying to commit changes
I am running the following code that errors when I try to commit my changes using Cayenne as my ORM. The code is pasted below and errors on the line context.commitChanges (); Output messages are inserted below the code. Any help in identifying this question would be appreciated.
import org.apache.cayenne.access.DataContext; import java.util. *; import com.jared. *; public class Main { public static void main (String [] args) { DataContext context = DataContext.createDataContext (); Stocks theStock = (Stocks) context.createAndRegisterNewObject (Stocks.class); theStock.setAsk (3.4); theStock.setAvgdailyvolume (323849); theStock .setBid (5.29); theStock.setChange (-1.22); theStock.setDayhigh (9.21); theStock.setDaylow (2.11); theStock.setLasttradeprice (5.11); theStock.setLasttradesize (3827); theStock.setOpen (6.21); theStock.setPriorclose (4.21); theStock.setShortratio (1.1); theStock.setSymbol ("^ SP%"); theStock.setVolume (28193); theStock.setLasttradedate (new Date ()); context.commitChanges (); System.out.println ("Done with the database"); } }
Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate startedLoading INFO: started configuration loading. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate shouldLoadDataDomain INFO: loaded domain: stocks Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate loadDataMap INFO: loaded. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate shouldLoadDataNode INFO: loading. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate shouldLoadDataNode INFO: using factory: org.apache.cayenne.conf.DriverDataSourceFactory Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.DriverDataSourceFactory load INFO: loading driver information from 'stocksNode.driver.xml'. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.DriverDataSourceFactory $ DriverHandler init INFO: loading driver org.hsqldb.jdbcDriver Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.DriverDataSourceFactory $ LoginHandler init INFO: loading user name and password. Nov 20, 2008 11:20:37 PM org.apache.cayenne.access.QueryLogger logPoolCreated INFO: Created connection pool: jdbc: hsqldb: file: / hsqldb / data / stocks Driver class: org.hsqldb.jdbcDriver Min. connections in the pool: 1 Max. connections in the pool: 1 Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate shouldLoadDataNode INFO: loaded datasource. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate initAdapter INFO: no adapter set, using automatic adapter. Nov 20, 2008 11:20:37 PM org.apache.cayenne.conf.RuntimeLoadDelegate finishedLoading INFO: finished configuration loading in 203 ms. Exception in thread "main" org.apache.cayenne.CayenneRuntimeException: [v.3.0M4 May 18 2008 16:32:02] Commit Exception at org.apache.cayenne.access.DataContext.flushToParent (DataContext.java:1192) at org.apache.cayenne.access.DataContext.commitChanges (DataContext.java:1066) at Main.main (Main.java:24) Caused by: java.lang.NullPointerException at org.apache.cayenne.access.DataDomainInsertBucket.createPermIds (DataDomainInsertBucket.java:101) at org.apache.cayenne.access.DataDomainInsertBucket.appendQueriesInternal (DataDomainInsertBucket.java:76) at org.apache.cayenne.access.DataDomainSyncBucket.appendQueries (DataDomainSyncBucket.java:80) at org.apache.cayenne.access.DataDomainFlushAction.preprocess (DataDomainFlushAction.java:183) at org.apache.cayenne.access.DataDomainFlushAction.flush (DataDomainFlushAction.java:135) at org.apache.cayenne.access.DataDomain.onSyncFlush (DataDomain.java:821) at org.apache.cayenne.access.DataDomain $ 2.transform (DataDomain.java:788) at org.apache.cayenne.access.DataDomain.runInTransaction (DataDomain.java:847) at org.apache.cayenne.access.DataDomain.onSync (DataDomain.java:785) at org.apache.cayenne.access.DataContext.flushToParent (DataContext.java:1164) ... 2 more
+1
source to share
1 answer
Username: Password?
ClientConnection = new HessianConnection (" http: // localhost: 8080 / cayenne-service ", "cayenne-user", "secret",
null);
+2
source to share