dev@glassfish.java.net

Re: Compiling Glassfish in Eclipse

From: Dinesh Patil <Dinesh.Patil_at_Sun.COM>
Date: Tue, 22 Aug 2006 17:45:11 -0700

this is failing in admin-gui/admin-jsf which uses Apt taskdef, that's
been added and executed using "exec"
       <exec dir="." executable="${execute.ant}" failonerror="true">
                <arg line="-f aptbuild.xml
-Dglassfish.home=${glassfish.home} -lib ${lib.dir}/ant-apt.jar compile" />
        </exec>

Anissa/Ken, do you know about this?

[java] compile-java:
   [java] [exec] Buildfile: aptbuild.xml
   [java]
   [java] [exec] BUILD FAILED
   [java] [exec]
/home/markus/workspace/glassfish/admin-gui/admin-jsf/aptbuild.xml:6:
taskdef class org.apache.tools.ant.taskdefs.Apt cannot be found

  [java] /home/markus/workspace/glassfish/admin-gui/build.xml:48: The
following error occurred while executing this line:
   [java]
/home/markus/workspace/glassfish/admin-gui/admin-jsf/build.xml:57: exec
returned: 1

Marina Vatkina wrote:

> Uh-hoh. I missed the most important part! :(.
>
> Can somebody help Markus resolving the failure below?
>
> thanks,
> -marina
>
> Markus KARG wrote:
>
>> Marina,
>>
>> well, actually I didn't make it work, as you can read in that posting
>> quoted below...?!
>>
>> Markus
>>
>> Marina Vatkina wrote:
>>
>>> Hi Markus,
>>>
>>> Thanks a lot for taking time to make it work *and* describing all the
>>> tips and issues.
>>>
>>> I'm resending to a wider audience, so that others can benefit from your
>>> experience, or share theirs, or help improve it.
>>>
>>> Best Regards,
>>> -marina
>>>
>>> Markus KARG wrote On 08/19/06 05:26,:
>>>
>>>
>>>> I took the time to remove all maybe "crashed" code and configurations
>>>> from my disc and started pulling Glassfish sources once more,
>>>> following
>>>> the instructions on this page:
>>>> https://glassfish.dev.java.net/public/BuildGlassFish.html.
>>>>
>>>> Since you certainly are interested in the results (as they might be
>>>> representative for a lot of potential contrubutors to the persistence
>>>> subproject), I will provide you a report of this final attempt in the
>>>> following. Maybe you can find the time to forward the single issues to
>>>> the persons that might change the current situation.
>>>>
>>>> Okay, first the short story: Still I am not able to build Glassfish
>>>> following the instructions found on the above web site. The error
>>>> message is:
>>>>
>>>> [java] compile-java:
>>>> [java] [exec] Buildfile: aptbuild.xml
>>>> [java]
>>>> [java] [exec] BUILD FAILED
>>>> [java] [exec]
>>>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/aptbuild.xml:6:
>>>> taskdef class org.apache.tools.ant.taskdefs.Apt cannot be found
>>>> [java]
>>>> [java] [exec] Total time: 1 second
>>>> [java]
>>>> [java] BUILD FAILED
>>>> [java] /home/markus/workspace/glassfish/admin-gui/build.xml:48: The
>>>> following error occurred while executing this line:
>>>> [java]
>>>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/build.xml:57:
>>>> exec
>>>> returned: 1
>>>> [java]
>>>> [java] Total time: 1 minute 18 seconds
>>>> [java] [ERROR] Java Result: 1
>>>>
>>>> BUILD FAILED
>>>> File...... /home/markus/workspace/glassfish/bootstrap/maven.xml
>>>> Element... maven:reactor
>>>> Line...... 153
>>>> Column.... 40
>>>> Unable to obtain goal [build-pe] --
>>>> /home/markus/workspace/glassfish/bootstrap/../../glassfish/bootstrap/maven.xml:476:28:
>>>>
>>>> <fail> No message
>>>> Total time: 92 minutes 54 seconds
>>>> Finished at: Sat Aug 19 14:21:10 CEST 2006
>>>>
>>>> And here is the long story...:
>>>>
>>>> (1) A contributor need to have cvs installed, while many users will no
>>>> more have this installed meanwhile. CVS silently became obsolete on
>>>> many
>>>> user's machines, since e. g. the world's largest open source
>>>> community,
>>>> "SourceForge", moved from CVS to SVN. Also many companies moved
>>>> from CVS
>>>> to SVN for their internal projects. In addition, OpenSUSE 10.1, one of
>>>> the most popular Linux distributions in Europe, is no more coming with
>>>> CVS clients installed but only with SVN clients by default. So users
>>>> have to search for CVS command line clients on their own in the www,
>>>> which is quite annoying. Using Eclipse as a CVS client is not working
>>>> also, since it just downloads the glassfish/bootstrap folder, but
>>>> Maven
>>>> in turn tries to find the CVS command line client to pull
>>>> dependencies,
>>>> which will certainly fail then (I think it is a drawback of Maven that
>>>> it depends on the CVS command line client instead of having its own
>>>> Java-based CVS support inside; SVN for example comes with a 100% pure
>>>> Java client, which is open source and could be part of the Maven
>>>> program
>>>> so there is no native code and such no installation of SVN needed
>>>> actually). Even if many CVS users won't accept it: SVN has overtaken
>>>> meanwhile and is the current standard. As a result of the installation
>>>> of CVS, you might run into a bug: CVS is not able to read the
>>>> /home/yourname/.cvspass file sometimes.
>>>>
>>>> The error message looks like this:
>>>>
>>>> cvs checkout: warning: failed to open /home/markus/.cvspass for
>>>> reading:
>>>> No such file or directory
>>>> Fatal error, aborting.
>>>>
>>>> To fix it, you need to logout (YES, logOUT! If you logIN it still will
>>>> not work!). I think this is a bug of CVS. So I would highly advise to
>>>> migrate Glassfish from CVS to SVN in the next months. Also you should
>>>> add my hint with the cvs logout to the "Getting Started" page as
>>>> "Tip (a)".
>>>>
>>>> There are some more tips one has to pay attention:
>>>>
>>>> Tip (b): Do not try to use Eclipse to pull the complete Glassfish
>>>> code.
>>>> After you waited for hours, you will remark that Glassfish is not one
>>>> project in Eclipse but you need to have one Eclipse project for each
>>>> subfolder of the glassfish CVS module. When you try to do that,
>>>> Eclipse
>>>> complains about this beeing impossible, since it cannot create
>>>> projects
>>>> out of subfolders of a project. To fix it, you need to remove the
>>>> Glassfish project (but beware not to remove its content!). It's easier
>>>> installing CVS once you have found where to get it from.
>>>>
>>>> Tip (c): Don't try any other thing but downloading the
>>>> glassfish/bootstrap. For example, do NOT try that:
>>>>
>>>> md Glassfish
>>>> cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs checkout bootstrap
>>>>
>>>> While it will result in exactly the same checkout you will soon remark
>>>> that some (don't ask me why) was so clever to add "../../glassfish"
>>>> into
>>>> the dependencies of some projects, so in fact Maven will not be
>>>> able to
>>>> resolve dependencies. If you didn't hear what I told you, then you
>>>> should do "mv Glassfish glassfish" as soon as possible... Unix is case
>>>> sensitive... Would be great if someone could change the Maven files to
>>>> not include "../../glassfish" but only "../" instead. It took me two
>>>> hours to find out about that.
>>>>
>>>> (2) The given command sequence is not sufficient. After installing CVS
>>>> on my OpenSUSE 10.1 laptop, I did what BuildGlassFish.html wants me
>>>> to do:
>>>>
>>>> % mkdir workspace
>>>> % cd workspace
>>>> % cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs checkout
>>>> glassfish/bootstrap
>>>>
>>>> As I wrote before, there is a CVS bug, so actually I had to do
>>>> % cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs logout before the
>>>> checkout to make the checkout work.
>>>>
>>>> BTW, it is funny that I need to pass my name but not my password. But
>>>> maybe its only me that thinks it would be a better idea to have either
>>>> an anonymous account for readers plus a UID + PWD secured account for
>>>> committers.
>>>>
>>>> (3) As next step the web site wants a contributor to create a
>>>> build.properties file. It would be great if someone could change
>>>> the web
>>>> site to use a fixed size font to render the variable names. This
>>>> improves readability a lot. I had to read that chapter five times to
>>>> understand it correctly, just due to readability.
>>>>
>>>> (4) The web site says JDK 1.5.0_07 is needed. Actually I doubt this.
>>>> AFAIK it should work with any JDK 5 implementation.
>>>>
>>>> (5) Also the site says "Previously, we need to set 2 extra
>>>> variables ".
>>>> I wondered "previously to what"? In fact the file shall contain four
>>>> lines but not two. So why not just "add x and y to that file"? Also
>>>> you
>>>> say "...no need to set those now". Cool, I shall do something but I
>>>> shall not do it now. If you liked to confuse the contributor with that
>>>> sentence, you succeeded finally!
>>>>
>>>> (6) You want contributors to install and use an outdated version of
>>>> Maven. This is not very smart. It would be highly appreciated to
>>>> update
>>>> the Glassfish project to the latest Maven 2.0.4, since 1.x and 2.x are
>>>> almost incompatible and users that started with current Maven 2.x just
>>>> don't know how to handle Maven 1.x projects. Also it is not very smart
>>>> that I need to have Maven 1.0.2 installed just to compile Glassfish
>>>> while all my other projects are done using Maven 2.x. Its just
>>>> squandered time.
>>>>
>>>> (7) Maven 2.0.4 allows projects to be located in hierarchic
>>>> folders, as
>>>> you did it with the workspace/glassfish/bootstrap folders. You can use
>>>> Maven to compile a single project by starting it inside of that
>>>> folder,
>>>> or you can make it compile the complete glassfish by starting it at
>>>> the
>>>> root folder. Unfortunately glassfish is missing the needed Maven files
>>>> in the root folder to make it work. Instead, you are forcing the
>>>> contributor to cd into glassfish/bootstrap, what in fact is not (a)
>>>> Maven style (b) intuitive. Once having migrated to Maven 2.0.4 you
>>>> should change this ASAP.
>>>>
>>>> (8) Maven 2.0.4 suggests to have tests inside of the project folder
>>>> but
>>>> not to have a separated test project. For example, tests for
>>>> entity-persistence should be located inside of the folder
>>>> entity-persistence/tests but not inside of entity-persistence-tests.
>>>> This enables users to test a project by doing: cd entity-persistence;
>>>> mvn test, what in fact is (a) Maven style and (b) intuitive. Also it
>>>> reduces the overall complexity of the Glassfish project.
>>>>
>>>> (9) Please provide ONE SINGLE, SIMPLE beginner's page! In the past
>>>> days
>>>> I received lots of links and tips etc. This just confuses new
>>>> contributors. Reduce it to a very small and short intro, and abstain
>>>> from doing three things:
>>>>
>>>> (a) Don't let contributors decide which branch / tag to use. Since YOU
>>>> have the problems with merging the changes, YOU should decide whether
>>>> contributors start from HEAD or from FCS. Since it is much easier to
>>>> merge HEAD-branched contributions, just remove the tip with the FCS
>>>> tag.
>>>>
>>>> (b) Don't let contributors decide whether to download a complete
>>>> Glassfish source hierarchy or just a single project. Since there is no
>>>> page found how to contribute to a single project, and since it is not
>>>> working correctly (I tried it out several times), always force
>>>> contributors to have the complete Glassfish hierarchy downloaded. It
>>>> takes a long time, but it will work then at least. NOTE: Actually
>>>> after
>>>> 92 minutes Maven gave up with the error message printed in the
>>>> header of
>>>> this posting; in fact it is NOT working.
>>>>
>>>> (c) "This will build GlassFish V2 with clustering features. If you
>>>> want
>>>> to continue using GlassFish in V1 mode, you can use following
>>>> commands:
>>>> % maven bootstrap-pe build-pe configure-runtime-pe". Do you really
>>>> think
>>>> that anyone that needs a "Getting Started" page is able to at least
>>>> understand WHAT to decide at this stage?
>>>>
>>>> (10) IDE Support: Most Java programmers are using Eclipse. Sun
>>>> staff, I
>>>> know, this hurts you. But it is the truth. Since Glassfish is an Open
>>>> Source project it should take care not to ignore Eclipse people.
>>>> Due to
>>>> that reason, here are some points to take care of:
>>>>
>>>> (a) You have a nice page talking about IDE Support. But it only
>>>> talks of
>>>> NetBeans. Please add information on Eclipse, JBuilder, IDEA... or
>>>> remove
>>>> the NetBeans instructions otherwise. This would only be fair.
>>>>
>>>> (b) The source code contains NetBeans specific stuff. Maven actually
>>>> contains plugins for creating IDE projects out of a Maven project.
>>>> This
>>>> should be the preferred way. Remove the NetBeans stuff from the source
>>>> and add a netbeans plugin to Maven. That's not only cleaning the
>>>> source,
>>>> it also will be a great benefit to Maven.
>>>>
>>>> (c) Heres the lines lots of contributors might be waiting for: If you
>>>> want to edit (and compile) Glassfish with Eclipse IDE, its just
>>>> easy as
>>>> this:
>>>>
>>>> - Glassfish consists of a lot of single subprojects. Each one has
>>>> to be
>>>> its own project in Eclipse. You need to know that.
>>>> - If you want to edit / compile e. g. entity-persistence, then do the
>>>> following.
>>>> - cd workspace/glassfish/entity-persistence
>>>> - maven eclipse
>>>> - This made maven create an Eclipse project our of that Maven project.
>>>> Cool, isn't it?
>>>> - Open Eclipse IDE
>>>> - Import "Import existing project into workspace"
>>>> - Select workspace/glassfish/entity-persistence
>>>> - That's all. You can edit now. Eclipse will compile on the fly, as
>>>> you're used to.
>>>> - To build the project, from the command line type: maven build
>>>>
>>>> (11) ANT support: I have seen several build.xml files. Actually Maven
>>>> can create build.xml on the fly, so to keep the source clean and to
>>>> let
>>>> us help by Maven as much as possible, just remove them. They are not
>>>> needed if you have Maven 2.0.4.
>>>>
>>>> (12) A tip to the ones using Linux: It is not possible to compile
>>>> Glassfish using GNU Glasspath. You really need Sun JDK 1.5. To ensure
>>>> that Maven is using the correct SDK, you should do export
>>>> JAVA_HOME=/usr/java/jdk1.5.0_07 before issuing the maven command!
>>>>
>>>> (13) On my laptop (Athlon 1800+, 512MB RAM) Maven needed more than one
>>>> hour to build Glassfish. Don't panic. It's just slow. I think the
>>>> reason
>>>> is that appserv-rt.jar is updated quite often. Maybe build times could
>>>> be reduced by either building a new appserv-rt.jar instead of updating
>>>> an existing one, or by splitting up appserv-rt.jar into single JARs.
>>>>
>>>> Tom Ware wrote:
>>>>
>>>>
>>>>
>>>>> Hi Markus,
>>>>>
>>>>> Please let me know if you have any questions related to either
>>>>> getting things set up, or if you are looking for some guidance
>>>>> related
>>>>> to working within the entity-persistence module. I will do my
>>>>> best to
>>>>> help.
>>>>>
>>>>> -Tom
>>>>>
>>>>> Markus KARG wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> Tom,
>>>>>>
>>>>>> thank you for your explanation. As I already wrote, maven is
>>>>>> indeed able
>>>>>> to create both, a build.xml for using ant, also an Eclipse
>>>>>> project files
>>>>>> set (.project etc.) automatically from the projects.xml file
>>>>>> found in
>>>>>> the entity-persistence-* subprojects, which indeed is an easy way
>>>>>> once
>>>>>> the coder knows it and once it works... This is a preferable
>>>>>> solution I
>>>>>> think, once someone installed out-aged maven 1.0.2 (but choosing
>>>>>> latest
>>>>>> Maven 2.0.4 would be a strategical decision of the Glassfish
>>>>>> management
>>>>>> not to be discussed in this subproject). So I could live with
>>>>>> this. Also
>>>>>> I was able to use ANT to build the -tests subproject. So since I had
>>>>>> learned about that old maven version now, I decided to remove
>>>>>> everything
>>>>>>
>>>>>
>>>>>
>>>>>> from my disks and start from scratch (once more). I think all my
>>>>>> trials
>>>>>
>>>>>
>>>>>
>>>>>> crashed the config in some way. I will write another email once I
>>>>>> have
>>>>>> done that. Day four...
>>>>>>
>>>>>> Thanks for all
>>>>>> Markus
>>>>>>
>>>>>> Tom Ware wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Hi Markus,
>>>>>>>
>>>>>>> I am admittedly not an Eclipse power user, but here is what I do to
>>>>>>> get my entity-persistence projects to build in Eclipse.
>>>>>>>
>>>>>>> - My Eclipse project contains a copy of the files checked out from
>>>>>>> CVS. (The files from <cvs
>>>>>>> workspace>/glassfish/entity-persistence/src/java)
>>>>>>> - I depend on two things to compile this project
>>>>>>> 1. A glassfish javaee.jar file. I obtain this by using the "maven
>>>>>>> bootstrap" functionality to get it, but one could just as easily be
>>>>>>> obtained by downloading the latest nightly build and installing it.
>>>>>>> It is found in <glassfish install directory>/lib.
>>>>>>> 2. A couple of source files generated by antlr during the build
>>>>>>> process. You can either have a look at the antlr.generate
>>>>>>> target in
>>>>>>> the build.xml found in entity-persistence for information about
>>>>>>> how to
>>>>>>> generate or just used the files from the attached jar:
>>>>>>> EJBQLAntlr.jar.
>>>>>>> - With these two dependancies added, my entity-persistence project
>>>>>>> will compile.
>>>>>>> - Using the classes within Glassfish is a matter of updating the
>>>>>>> toplink.essentials.jar file in <glassfish install directory>/lib
>>>>>>> with
>>>>>>> the newly compiled classes. I usually use the build script to do
>>>>>>> this, but a jar could be fairly easily created since all it
>>>>>>> contains
>>>>>>> are the compiled class files and 4 other files.
>>>>>>> * The META-INF directory and its contents from
>>>>>>> entity-persistence/resources
>>>>>>> * The VendorNameToPlatformMapping.properties file found in
>>>>>>> src/java/oracle/toplink/essentials/internal/helper (This file
>>>>>>> should
>>>>>>> be place in the oracle/toplink/essentials/internal/helper
>>>>>>> directory of
>>>>>>> the jar file)
>>>>>>> * The two xsd files found in: <cvs
>>>>>>> workspace>/glassfish/persistence-api/schemas
>>>>>>> - If you want to see a built version of this file, you can
>>>>>>> either get
>>>>>>> it in you glassfish install or get the latest build from the
>>>>>>> following
>>>>>>> webpage:
>>>>>>> https://glassfish.dev.java.net/downloads/persistence/JavaPersistence.html
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> - My entity-persistence-tests project depends on 3 things
>>>>>>> 1. The set of compiled files from the entity-persistence project
>>>>>>> described above
>>>>>>> 2. The javaee.jar file mentioned above
>>>>>>> 3. A JUnit jar file - I use the one found in <cvs
>>>>>>> workspace>/glassfish/appserv-tests/lib
>>>>>>> - With those files it compiles
>>>>>>> - The tests are actually run using 3 jar files. The way they are
>>>>>>> build is best described in the build.xml found in
>>>>>>> entity-persistence-tests, but if you would like some additional
>>>>>>> information about their contents, just let me know.
>>>>>>>
>>>>>>> If you can get these projects to compile, the next step is to
>>>>>>> run the
>>>>>>> tests. I can help you with the entity-persistence-tests. We will
>>>>>>> have to include the folks from Sun in the discussion about how
>>>>>>> to get
>>>>>>> the app server tests to run.
>>>>>>>
>>>>>>> Let me know if this information is helpful and where you would like
>>>>>>> further details,
>>>>>>> Tom
>>>>>>>
>>>>>>>
>>>>>>> Markus KARG wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> I found some more time to play with out-dated Maven 1.0.2 and got
>>>>>>>> Eclipse to at least edit and compile entity-persistence module.
>>>>>>>> Here is
>>>>>>>> what I had to do to make it work:
>>>>>>>> - In Eclipse, use CVS browser to download the complete (!)
>>>>>>>> glassfish
>>>>>>>> source (not only the persistency module). BEWARE NOT TO NAME THE
>>>>>>>> Eclipse
>>>>>>>> Project "Glassfish", but it must be named "glassfish" (all in
>>>>>>>> lower
>>>>>>>> cases -- Maven will fail otherwise).
>>>>>>>> - Install out-dated Maven 1.0.2 (yes, even if you have current
>>>>>>>> Maven
>>>>>>>> 2.0.4 installed already...)
>>>>>>>> - Close Eclipse
>>>>>>>> - Move the glassfish folder from your Eclipse workspace to
>>>>>>>> somewhere
>>>>>>>> else, e. g. /home/yours
>>>>>>>> - Go to the command line (e. g. bash)
>>>>>>>> - Go into the glassfish/glassfish folder
>>>>>>>> - Set your correct JAVA_HOME (mine was softlinked to GNU
>>>>>>>> Classpath,
>>>>>>>> which will fail due to a Maven 1.0.2 bug; you need Sun JDK).
>>>>>>>> - Set your PATH to include the maven-1.0.2/bin folder.
>>>>>>>> - Type: maven
>>>>>>>> - Should run without a failure (but needs hours)
>>>>>>>> - Go into the glassfish/entity-persistence folder
>>>>>>>> - Type: maven (Maven 2.0.4 users: Do NOT type mvn compile)
>>>>>>>> - Should run without a failure, but needs some minutes
>>>>>>>> - Type: maven -Dmaven.eclipse.workspace=/home/yours/.eclipse
>>>>>>>> eclipse:add-maven-repo (.eclipse is the folder I am hosting my
>>>>>>>> eclipse
>>>>>>>> workspace inside). (Maven 2.0.4 users: Do NOT type mvn
>>>>>>>> -Declipse.workspace, but really maven -Dmaven.eclipse.workspace).
>>>>>>>> - Should run without a failure. BEWARE NOT TO HAVE ECLIPSE OPEN
>>>>>>>> WHILE
>>>>>>>> THIS IS RUNNING.
>>>>>>>> - Type: maven eclipse (Maven 2.0.4 users: Do NOT type mvn
>>>>>>>> eclipse:eclipse but really maven eclipse).
>>>>>>>> - Open Eclipse
>>>>>>>> - File/Import: Import existing project into current workspace;
>>>>>>>> select:
>>>>>>>> /home/yours/glassfish/entity-persistence/
>>>>>>>> - After some seconds Eclipse should show the project, without any
>>>>>>>> error
>>>>>>>> message.
>>>>>>>>
>>>>>>>> This procedure allows me to edit & compile entity-persistence in
>>>>>>>> Eclipse
>>>>>>>> 3.1, but it doesn't work for entity-persistence-test due to the
>>>>>>>> following failure:
>>>>>>>>
>>>>>>>> markus_at_localhost:~/glassfish/entity-persistence-tests> maven
>>>>>>>> __ __
>>>>>>>> | \/ |__ _Apache__ ___
>>>>>>>> | |\/| / _` \ V / -_) ' \ ~ intelligent projects ~
>>>>>>>> |_| |_\__,_|\_/\___|_||_| v. 1.0.2
>>>>>>>>
>>>>>>>> The build cannot continue because of the following unsatisfied
>>>>>>>> dependencies:
>>>>>>>>
>>>>>>>> commons-jelly-tags-interaction-1.0.jar
>>>>>>>> commons-jelly-tags-http-1.0.jar
>>>>>>>>
>>>>>>>> Total time: 3 seconds
>>>>>>>> Finished at: Thu Aug 17 16:18:09 CEST 2006
>>>>>>>>
>>>>>>>> markus_at_localhost:~/glassfish/entity-persistence-tests>
>>>>>>>>
>>>>>>>>
>>>>>>>> Maybe someone knows the solution for that?
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Markus
>>>>>>>>
>>>>>>>>
>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Thanks much Tom!
>>>>>>>>>
>>>>>>>>> Documenting this approach seems very valuable. If you give us a
>>>>>>>>> pointer to how to do that we will add it to the persistence
>>>>>>>>> pages.
>>>>>>>>>
>>>>>>>>> Marina, could you help us with determining what tests need to
>>>>>>>>> be run
>>>>>>>>> and how?
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> - eduard/o
>>>>>>>>>
>>>>>>>>> Markus KARG wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Tom,
>>>>>>>>>>
>>>>>>>>>> thank you for your kind answer. Indeed what you wrote is the
>>>>>>>>>> only
>>>>>>>>>> thing
>>>>>>>>>> I want to do *now* (maybe in future I will also contribute to
>>>>>>>>>> other
>>>>>>>>>> projects, but then the project structure might be 'corrected'
>>>>>>>>>> meanwhile). So it would be great if you could send me your
>>>>>>>>>> Eclipse
>>>>>>>>>> project (you can just use the Eclipse EXPORT menu item) to be
>>>>>>>>>> able to
>>>>>>>>>> compile the entity-persistence and entity-persistence-tests.
>>>>>>>>>> Also I
>>>>>>>>>> need
>>>>>>>>>> to know how to integrate the new .jar then into SAS9 to let
>>>>>>>>>> it run
>>>>>>>>>> (for
>>>>>>>>>> a "real life" test).
>>>>>>>>>>
>>>>>>>>>> Thanks a lot!
>>>>>>>>>> Markus
>>>>>>>>>>
>>>>>>>>>> Tom Ware wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> Hi Markus,
>>>>>>>>>>>
>>>>>>>>>>> I am one of the leads for the entity-persistence module and
>>>>>>>>>>> have
>>>>>>>>>>> been
>>>>>>>>>>> doing my best to follow this conversation. I am not sure
>>>>>>>>>>> how much
>>>>>>>>>>> help I will be, but I'll add some comments.
>>>>>>>>>>>
>>>>>>>>>>> I also struggled getting the build system going, so I feel your
>>>>>>>>>>> pain. I am wondering if between Eduardo and I we can
>>>>>>>>>>> provide a way
>>>>>>>>>>> that you can contribute to the entity-persistence part of the
>>>>>>>>>>> project
>>>>>>>>>>> (so that you can allow MAX DB support in the Java
>>>>>>>>>>> Persistence API)
>>>>>>>>>>>
>>>>>>>>>>> I have used both Eclipse and JDeveloper to work on the
>>>>>>>>>>> entity-persistence and entity-persistence-tests modules. I
>>>>>>>>>>> currently
>>>>>>>>>>> have working Eclipse projects that allow me to work with these
>>>>>>>>>>> projects.
>>>>>>>>>>>
>>>>>>>>>>> The entity-persistence and entity-persistence-tests modules
>>>>>>>>>>> very
>>>>>>>>>>> minimal dependancies on the rest of GlassFish (they need to
>>>>>>>>>>> because
>>>>>>>>>>> the specification says they have to be portable)
>>>>>>>>>>>
>>>>>>>>>>> I use CVS to check out the two modules mentioned above and
>>>>>>>>>>> have a
>>>>>>>>>>> simple set of jars I depend on for compilation. My only real
>>>>>>>>>>> interation with the GlassFish build system is to run the tests
>>>>>>>>>>> (something I am hopeful that some of the folks at Sun can
>>>>>>>>>>> help you
>>>>>>>>>>> get
>>>>>>>>>>> going with minimal pain.)
>>>>>>>>>>>
>>>>>>>>>>> Let me know if allowing Max DB support on the Java Persistence
>>>>>>>>>>> API is
>>>>>>>>>>> what you were interested in doing (unfortunately other parts
>>>>>>>>>>> of the
>>>>>>>>>>> project are out of my area of expertise). If that is what
>>>>>>>>>>> you are
>>>>>>>>>>> interested in doing, I'll do my best to give you the details of
>>>>>>>>>>> how I
>>>>>>>>>>> have every thing working in Eclipse and you can let me know
>>>>>>>>>>> if the
>>>>>>>>>>> instructions are manageable. If we can get you to the point
>>>>>>>>>>> that you
>>>>>>>>>>> can work in a reasonably simple manner, all that remains is
>>>>>>>>>>> to get
>>>>>>>>>>> the
>>>>>>>>>>> tests up and running and hopefully Eduardo can give us some
>>>>>>>>>>> help
>>>>>>>>>>> with
>>>>>>>>>>> that part of things.
>>>>>>>>>>>
>>>>>>>>>>> Let me know if this is of interest to you.
>>>>>>>>>>>
>>>>>>>>>>> Best Regards,
>>>>>>>>>>> Tom Ware
>>>>>>>>>>>
>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> Eduardo,
>>>>>>>>>>>>
>>>>>>>>>>>> hope this will be soon, because I spent two more hours
>>>>>>>>>>>> today in
>>>>>>>>>>>> downloading the out-aged maven 1.0.2 on my machine and
>>>>>>>>>>>> tried once
>>>>>>>>>>>> more
>>>>>>>>>>>> to get Glassfish built (following the rules on the Glassfish
>>>>>>>>>>>> WebSite),
>>>>>>>>>>>> but now maven is not working correctly, complaining about
>>>>>>>>>>>> things
>>>>>>>>>>>> non-maven-admins do not understand. So once more, I give
>>>>>>>>>>>> up. If
>>>>>>>>>>>> your
>>>>>>>>>>>> project is ready for *FAST* contributing, I'll be glad to
>>>>>>>>>>>> contribute
>>>>>>>>>>>> then (please let me know by direct mail, since I will quite
>>>>>>>>>>>> the
>>>>>>>>>>>> subscription to this mailing list soon as it is of no more
>>>>>>>>>>>> interest
>>>>>>>>>>>> since I am not able to contribute my code). But until then,
>>>>>>>>>>>> sorry, I
>>>>>>>>>>>> need to prefer working around the missing MaxDB support in my
>>>>>>>>>>>> application instead of contributing the MaxDB support to
>>>>>>>>>>>> Glassfish.
>>>>>>>>>>>> If I
>>>>>>>>>>>> would have done so from the beginning, I would have saved more
>>>>>>>>>>>> than
>>>>>>>>>>>> once
>>>>>>>>>>>> day of work. Sad, but true. As you see, now we're back as
>>>>>>>>>>>> we had
>>>>>>>>>>>> been on
>>>>>>>>>>>> Monday: Still no MaxDB support in Glassfish, still not
>>>>>>>>>>>> improved
>>>>>>>>>>>> contribution process. I am sad about this, actually, but two
>>>>>>>>>>>> days of
>>>>>>>>>>>> frustration is enough. I am willing to spend my 20 years of
>>>>>>>>>>>> experience
>>>>>>>>>>>> in coding, but I am not willing spending more nerves on
>>>>>>>>>>>> failing
>>>>>>>>>>>> attempts
>>>>>>>>>>>> to just compile the code. As you can seen, using maven not
>>>>>>>>>>>> only
>>>>>>>>>>>> has
>>>>>>>>>>>> benefits. If the project structure just would be one src
>>>>>>>>>>>> folder
>>>>>>>>>>>> containing the complete source tree plus a simple
>>>>>>>>>>>> build.xml, then
>>>>>>>>>>>> you
>>>>>>>>>>>> still would have modularization AND anybody could use
>>>>>>>>>>>> Eclipse /
>>>>>>>>>>>> ANT
>>>>>>>>>>>> without spending days... :-(
>>>>>>>>>>>>
>>>>>>>>>>>> Markus
>>>>>>>>>>>>
>>>>>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Markus. I certainly agree; but sometimes, in a very
>>>>>>>>>>>>> large and
>>>>>>>>>>>>> complex project, making it easy is not that easy :-(. But
>>>>>>>>>>>>> we are
>>>>>>>>>>>>> seing a spike in interest in GlassFish so we are going to
>>>>>>>>>>>>> try to
>>>>>>>>>>>>> improve this in the near future.
>>>>>>>>>>>>>
>>>>>>>>>>>>> THanks, and please keep your interest in GlassFish
>>>>>>>>>>>>>
>>>>>>>>>>>>> - eduard/o
>>>>>>>>>>>>>
>>>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Eduardo,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I have managed a dozen of open source projects on my own and
>>>>>>>>>>>>>> know
>>>>>>>>>>>>>> your
>>>>>>>>>>>>>> problems certainly. But I learned one lesson very soon:
>>>>>>>>>>>>>> If you
>>>>>>>>>>>>>> have a
>>>>>>>>>>>>>> lot of items on your stack and one of them is "make it
>>>>>>>>>>>>>> easy for
>>>>>>>>>>>>>> contributors to add their code", then do that before
>>>>>>>>>>>>>> anything
>>>>>>>>>>>>>> else.
>>>>>>>>>>>>>> Why
>>>>>>>>>>>>>> that? Because the easier it is to add small
>>>>>>>>>>>>>> contributions, the
>>>>>>>>>>>>>> more
>>>>>>>>>>>>>> contributors will add code to the project. In turn, they
>>>>>>>>>>>>>> will
>>>>>>>>>>>>>> help you
>>>>>>>>>>>>>> fix all the other items on your stack. If you do all the
>>>>>>>>>>>>>> items on
>>>>>>>>>>>>>> your
>>>>>>>>>>>>>> own before making it easier to contribute code, then you
>>>>>>>>>>>>>> will
>>>>>>>>>>>>>> have
>>>>>>>>>>>>>> to do
>>>>>>>>>>>>>> all the work on your own while all the others cannot help
>>>>>>>>>>>>>> you
>>>>>>>>>>>>>> anything
>>>>>>>>>>>>>> an get frustrated. I learned about that in my own projects,
>>>>>>>>>>>>>> also in
>>>>>>>>>>>>>> some
>>>>>>>>>>>>>> projects I contributed to. So this is no critics, just a
>>>>>>>>>>>>>> tip.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If I find more time, I certainly will try out to
>>>>>>>>>>>>>> contribute my
>>>>>>>>>>>>>> changes
>>>>>>>>>>>>>> for MaxDB (and maybe more) to Glassfish, but at the
>>>>>>>>>>>>>> moment, I
>>>>>>>>>>>>>> do not
>>>>>>>>>>>>>> have the time to invest more time in the unnecessarily
>>>>>>>>>>>>>> complex
>>>>>>>>>>>>>> structure
>>>>>>>>>>>>>> of the Glassfish code (in fact, the modularization is the
>>>>>>>>>>>>>> main
>>>>>>>>>>>>>> problem
>>>>>>>>>>>>>> for Eclipse -- you have to add every single src folder
>>>>>>>>>>>>>> manually,
>>>>>>>>>>>>>> which
>>>>>>>>>>>>>> needs hours of time).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Have Fun
>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> It must be possible to download the code and type "ant" or
>>>>>>>>>>>>>>>> press
>>>>>>>>>>>>>>>> Eclipse's "build" button if you want to receive SMALL
>>>>>>>>>>>>>>>> contributions.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> But
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> maybe you don't want them, actually?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Yes, we want them. We are just your typical Open Source
>>>>>>>>>>>>>>> project:
>>>>>>>>>>>>>>> there is always a long list of things to do.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Let's see what others say.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> - eduard/o
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> As I wrote yesterday, I just want to spent a few hours
>>>>>>>>>>>>>>>> contributing
>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>> code necessary to support MaxDB / SAPDB (which
>>>>>>>>>>>>>>>> shouldn't be
>>>>>>>>>>>>>>>> much
>>>>>>>>>>>>>>>> more
>>>>>>>>>>>>>>>> than editing a copy of the Sybase adaptor class).
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> After spending three hours for downloading the Glassfish
>>>>>>>>>>>>>>>> source
>>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>>> trying to convince Eclipse to compile, I gave up now. I
>>>>>>>>>>>>>>>> don't
>>>>>>>>>>>>>>>> have
>>>>>>>>>>>>>>>> time
>>>>>>>>>>>>>>>> to find out how to compile the source any longer. I read
>>>>>>>>>>>>>>>> thousands of
>>>>>>>>>>>>>>>> lines of how-tos for using Netbeans (which I don't have
>>>>>>>>>>>>>>>> installed) and
>>>>>>>>>>>>>>>> Maven (which I am not aware how to use) but there is no
>>>>>>>>>>>>>>>> SIMPLE
>>>>>>>>>>>>>>>> info on
>>>>>>>>>>>>>>>> how to just let ANT or Eclipse run to get it built.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hey, remember, I just want to contribute one single
>>>>>>>>>>>>>>>> class...!
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> So is there a SIMPLE way to configure Eclipse to compile
>>>>>>>>>>>>>>>> Glassfish
>>>>>>>>>>>>>>>> available? Or is there build.xml I haven't found?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I will neither learn how to use Netbeans nor how to
>>>>>>>>>>>>>>>> administrate
>>>>>>>>>>>>>>>> Maven
>>>>>>>>>>>>>>>> just to contribute a class that is to be written in
>>>>>>>>>>>>>>>> less than
>>>>>>>>>>>>>>>> one
>>>>>>>>>>>>>>>> hour. :-(
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> So if there is no simple way to compile Glassfish or to
>>>>>>>>>>>>>>>> contribute my
>>>>>>>>>>>>>>>> code in another way, I am sorry, then I have to abstain
>>>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>> contributing to Glassfish (sad, but true, but my time is
>>>>>>>>>>>>>>>> scarce).
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> It must be possible to download the code and type "ant" or
>>>>>>>>>>>>>>>> press
>>>>>>>>>>>>>>>> Eclipse's "build" button if you want to receive SMALL
>>>>>>>>>>>>>>>> contributions. But
>>>>>>>>>>>>>>>> maybe you don't want them, actually?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>>
>>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>