cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lon Varscsak <lon.varsc...@gmail.com>
Subject Re: Class generation in 3.2.M2-SNAPSHOT
Date Wed, 29 Oct 2014 21:11:48 GMT
Below is my plugin section for reference, but when I have the
additionalMaps section, I get this error:

[ERROR] Failed to execute goal
org.apache.cayenne.plugins:maven-cayenne-plugin:3.2M1:cgen (production) on
project shbusinesslogic: Error generating classes: [v.3.2M1 Jul 07 2013
16:23:58] Error loading DataMap, last processed tag: <null>:
/Users/varscsak/Development/git/smarthealth/tapestry/libraries/SHCayenneBusinessLogic/cayenne-model.xml
(No such file or directory) -> [Help 1]

But the cayenne-model.xml is no where in that directory...not sure why it's
trying to look there.

<plugin>

<groupId>org.apache.cayenne.plugins</groupId>

<artifactId>maven-cayenne-plugin</artifactId>

    <!-- shared config part -->

    <configuration>

<destDir>${project.build.sourceDirectory}</destDir>

<template>${basedir}/supporting/subclass.vm</template>

<superTemplate>${basedir}/supporting/superclass.vm</superTemplate>

        <additionalMaps>${project.build.sourceDirectory}/../resources/</
additionalMaps>

    </configuration>

 <executions>

<execution>

            <id>production</id>

            <!-- Per execution config -->

            <configuration>

<map>${project.build.sourceDirectory}/../resources/production.map.xml</map>

            </configuration>

            <goals>

                <goal>cgen</goal>

            </goals>

</execution>

<execution>

            <id>marketing</id>

            <!-- Per execution config -->

            <configuration>

<map>${project.build.sourceDirectory}/../resources/marketing.map.xml</map>

            </configuration>

            <goals>

                <goal>cgen</goal>

            </goals>

</execution>

<execution>

            <id>customer</id>

            <!-- Per execution config -->

            <configuration>

<map>${project.build.sourceDirectory}/../resources/customer.map.xml</map>

            </configuration>

            <goals>

                <goal>cgen</goal>

            </goals>

</execution>

<execution>

            <id>personalization</id>

            <!-- Per execution config -->

            <configuration>

<map>${project.build.sourceDirectory}/../resources/personalization.map.xml</
map>

            </configuration>

            <goals>

                <goal>cgen</goal>

            </goals>

</execution>

</executions>

</plugin>


On Wed, Oct 29, 2014 at 9:45 AM, Lon Varscsak <lon.varscsak@gmail.com>
wrote:

> I agree on the project.xml idea...makes a lot of sense.
>
> Okay, on additionalMaps  I was trying this yesterday and couldn't get it
> to work.  I've provided the directory to where my datamap files are stored
> and I see that it fails (although I don't have any detail...not sure how to
> see that in m2e).  I've tried the full path, trailing slashes, no trailing
> slashes, etc.
>
> I'm probably being dense...but just not sure how. :D
>
> -Lon
>
>
> On Tue, Oct 28, 2014 at 11:19 PM, Andrus Adamchik <andrus@objectstyle.org>
> wrote:
>
>> Try using "additionalMaps" parameter:
>>
>>
>> http://cayenne.apache.org/docs/3.1/cayenne-guide/including-cayenne-in-project.html#maven-projects
>>
>> "additionalMaps [...] A directory that contains additional DataMap XML
>> files that may be needed to resolve cross-DataMap relationships for the the
>> main DataMap, for which class generation occurs."
>>
>> On a side note, I don't recall why we initially went with per-DataMap
>> instead of per-project "cgen", but now I feel like cgen should read
>> cayenne-project.xml and discover all this information on its own. Until we
>> change this approach, "additionalMaps" should help.
>>
>> HTH,
>> Andrus
>>
>> > On Oct 29, 2014, at 2:59 AM, Lon Varscsak <lon.varscsak@gmail.com>
>> wrote:
>> >
>> > There appears to be an issue either with class generation or something
>> with
>> > my model.
>> >
>> > Whenever I have a relationship that crosses datanodes the TargetEntity
>> is
>> > null.  So I get things like in the Java class:
>> >
>> > public static final
>> Property<$importUtils.formatJavaType(${rel.TargetEntity.
>> > ClassName})> COMPANY = new Property<$importUtils.formatJavaType(${rel
>> > .TargetEntity.ClassName})>("company");
>> >
>> > If the entity is with the same datanode I don't have an issue (same
>> line in
>> > the velocity template).
>> >
>> > Any ideas?
>> >
>> > Thanks,
>> >
>> > Lon
>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message