Re: Spinning up Cayenne in a unit test.

John Huss <[email protected]>
Newsgroups gmane.comp.java.cayenne.user
Message-ID <CAOUwSGuCZn3ZzkYTUsKHeAw7yib3Y7gXOpPr19dn37PFGSG0GA@mail.gmail.com>
You could add a node at runtime:

DataNode node = *new* DataNode("node");

... // configure node

runtime.getDataDomain().addNode(node);

runtime.getDataDomain().setDefaultNode(node);

On Wed, Oct 28, 2020 at 2:52 PM Tony Giaccone <[email protected]> wrote:

> 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.
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.