Problems building cayenne-src-1.1M3.tar.gz from source and unexpected error using prebuilt jar

From: Mike Kienenberger (mkienen..laska.net)
Date: Tue Mar 02 2004 - 16:52:23 EST

  • Next message: Mike Kienenberger: "Re: Problems building cayenne-src-1.1M3.tar.gz from source and unexpected error using prebuilt jar"

    Andrus,

    I decided to download cayenne-src-1.1M3.tar.gz and see if the getSnapshotId
    problem occurred with that.

    I've hit two separate problems so far. One when using it as-is, and one
    when trying to build it.

    First, I tried just dropping cayenne-nodeps.jar from that package into my
    project. I expected to see it fail the first time it tried to read a oracle
    TIMESTAMP field, but instead I got this on startup:

    StandardContext[]: Exception sending context initialized event to listener
    instance of class com.gvea.cayenne.CustomConfiguration
    java.lang.NoClassDefFoundError:
    org/apache/commons/collections/map/ReferenceMap
            at org.objectstyle.cayenne.event.EventSubject.<clinit>
    (EventSubject.java:82)
            at org.objectstyle.cayenne.map.DbRelationship.<clinit>
    (DbRelationship.java:79)
            at
    org.objectstyle.cayenne.map.MapLoader.processStartDbRelationship(MapLoader.java:1124)
            at org.objectstyle.cayenne.map.MapLoader.startElement(MapLoader.java:321)
            at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)

    Now I could see there potentially being a problem if the parser died while
    trying to deal with my obj-entity lock-type or obj-attribute lock
    parameters, but this looks like the commons collections dependency
    requirement has changed.

    I've been using Commons Collections 2.1 since that's what's required for
    Struts 1.1, but it looks like you've upgraded cayenne to 3.0 with this
    release (at least, I haven't noticed the problem yet in my couple-weeks-old
    cvs pull of cayenne).

    The build problem is this. I decided to add in the fix to use
    getTime/getDate/getTimestamp in DateUtilType so Oracle Timestamps would
    work.
    =============================================
    E:\java\cayenne-1.1M3\src> %ANT_HOME%\bin\ant
    [...]
        [javac]
    E:\java\cayenne-1.1M3\src\cayenne\org\objectstyle\cayenne\dataview\DataView.java:64:
    package org.jdom does not exist
    [...]
        [javac]
    E:\java\cayenne-1.1M3\src\cayenne\org\objectstyle\cayenne\event\JavaGroupsBridge.java:61:
    package org.javagroups does not exist
    [...]
    =============================================

    There may be other errors that I overlooked in my attempt to summarize the
    problems. Shouldn't these classes have been pulled out of the existing
    cayenne jars? If they aren't found during compile time, it seems like
    they'd also fail to be found during run time.

    A quick scan shows that jdom-b9.jar contains the org.jdom files so they must
    be not getting into the build.xml classpath. I don't see where
    org.javagroups is supposed to coming from.

    -Mike



    This archive was generated by hypermail 2.0.0 : Tue Mar 02 2004 - 16:52:02 EST