So I have a project which is running in Bootique, but the data model is
used in several different apps. To facilitate this, we created a jar file
that includes the generated classes, and the code and the
cayenne-project.xml file in one jar file. The result of this is tests run
for this jar, don't have access to the bootique runtime, as they are part
of a jar that's going to be included in other apps.
We're using an older version of Bootique and so the version of Cayenne is
4.0.B2
The cayenne project, only has a datamap there is no datanode defined in the
xml.
So I'm trying to spin up a cayenne runtime, using this code.
runtime = ServerRuntime.builder()
.addConfig("cayenne-CohortManager.xml")
.addModule(binder -> {
ServerModule.contributeProperties(binder)
.put("cayenne.jdbc.driver", "org.h2.Driver")
.put("cayenne.jdbc.url", "jdbc:h2:mem:CohortDB");
})
.build();
The problem is that later, when I try to commit changes, I get this error:
org.apache.cayenne.CayenneRuntimeException: [v.4.0.B2 Sep 26 2017
10:05:06] No DataNode configured for DataMap 'datamap' and no default
DataNode set
I'm successfully able to run other tests, because they never do a
commitobjects.
Any suggestions on how to resolve my problem.