Re: [Fuge-devel] Problem building hibernate-stk

0 views
Skip to first unread message

Woodbridge, Mark R

unread,
Aug 21, 2008, 5:28:13 AM8/21/08
to fuge-...@lists.sourceforge.net

> I've tested and committed the changes, which include the
> missing function.
> Sorry for the problem!

Thanks Allyson.

> Let me know how it goes,

I now have a different problem! Error message below.

Mark.

[INFO]
------------------------------------------------------------------------
[INFO] Building FuGE Hibernate STK Code: Mapping Between Hibernate and
JAXB2
[INFO] task-segment: [install]
[INFO]
------------------------------------------------------------------------
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
Downloading:
http://repo1.maven.org/maven2//net/sourceforge/fuge/fuge-hibernate-ident
ification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.pom
Downloading:
http://team.andromda.org/maven2/net/sourceforge/fuge/fuge-hibernate-iden
tification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.pom
Downloading:
http://download.java.net/maven/2/net/sourceforge/fuge/fuge-hibernate-ide
ntification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.pom
Downloading:
http://download.java.net/maven/1/net.sourceforge.fuge/poms/fuge-hibernat
e-identification-1.0-SNAPSHOT.pom
Downloading:
http://repo1.maven.org/maven2//net/sourceforge/fuge/fuge-jaxb2/1.0-SNAPS
HOT/fuge-jaxb2-1.0-SNAPSHOT.pom
Downloading:
http://team.andromda.org/maven2/net/sourceforge/fuge/fuge-jaxb2/1.0-SNAP
SHOT/fuge-jaxb2-1.0-SNAPSHOT.pom
Downloading:
http://download.java.net/maven/2/net/sourceforge/fuge/fuge-jaxb2/1.0-SNA
PSHOT/fuge-jaxb2-1.0-SNAPSHOT.pom
Downloading:
http://download.java.net/maven/1/net.sourceforge.fuge/poms/fuge-jaxb2-1.
0-SNAPSHOT.pom
Downloading:
http://repo1.maven.org/maven2//net/sourceforge/fuge/fuge-hibernate-ident
ification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.jar
Downloading:
http://team.andromda.org/maven2/net/sourceforge/fuge/fuge-hibernate-iden
tification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.jar
Downloading:
http://download.java.net/maven/2/net/sourceforge/fuge/fuge-hibernate-ide
ntification/1.0-SNAPSHOT/fuge-hibernate-identification-1.0-SNAPSHOT.jar
Downloading:
http://download.java.net/maven/1/net.sourceforge.fuge/jars/fuge-hibernat
e-identification-1.0-SNAPSHOT.jar
Downloading:
http://repo1.maven.org/maven2//net/sourceforge/fuge/fuge-jaxb2/1.0-SNAPS
HOT/fuge-jaxb2-1.0-SNAPSHOT.jar
Downloading:
http://team.andromda.org/maven2/net/sourceforge/fuge/fuge-jaxb2/1.0-SNAP
SHOT/fuge-jaxb2-1.0-SNAPSHOT.jar
Downloading:
http://download.java.net/maven/2/net/sourceforge/fuge/fuge-jaxb2/1.0-SNA
PSHOT/fuge-jaxb2-1.0-SNAPSHOT.jar
Downloading:
http://download.java.net/maven/1/net.sourceforge.fuge/jars/fuge-jaxb2-1.
0-SNAPSHOT.jar
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

Missing:
----------
1) net.sourceforge.fuge:fuge-hibernate-identification:jar:1.0-SNAPSHOT

Try downloading the file manually from the project website.

Then, install it using the command:
mvn install:install-file -DgroupId=net.sourceforge.fuge
-DartifactId=fuge-hibernate-identification -Dversion=1.0-SNAPSHOT
-Dpackaging=jar -Dfile=/path/to/file

Alternatively, if you host your own repository you can deploy the file
there:
mvn deploy:deploy-file -DgroupId=net.sourceforge.fuge
-DartifactId=fuge-hibernate-identification -Dversion=1.0-SNAPSHOT
-Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]

Path to dependency:
1) net.sourceforge.fuge:fuge-hibernate-mapping:jar:1.0-SNAPSHOT
2)
net.sourceforge.fuge:fuge-hibernate-identification:jar:1.0-SNAPSHOT

2) net.sourceforge.fuge:fuge-jaxb2:jar:1.0-SNAPSHOT

Try downloading the file manually from the project website.

Then, install it using the command:
mvn install:install-file -DgroupId=net.sourceforge.fuge
-DartifactId=fuge-jaxb2 -Dversion=1.0-SNAPSHOT -Dpackaging=jar
-Dfile=/path/to/file

Alternatively, if you host your own repository you can deploy the file
there:
mvn deploy:deploy-file -DgroupId=net.sourceforge.fuge
-DartifactId=fuge-jaxb2 -Dversion=1.0-SNAPSHOT -Dpackaging=jar
-Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]

Path to dependency:
1) net.sourceforge.fuge:fuge-hibernate-mapping:jar:1.0-SNAPSHOT
2) net.sourceforge.fuge:fuge-jaxb2:jar:1.0-SNAPSHOT

----------
2 required artifacts are missing.

for artifact:
net.sourceforge.fuge:fuge-hibernate-mapping:jar:1.0-SNAPSHOT

from the specified remote repositories:
maven-repository.dev.java.net (http://download.java.net/maven/1),
maven2-repository.dev.java.net (http://download.java.net/maven/2),
andromda (http://team.andromda.org/maven2),
central (http://repo1.maven.org/maven2),
repo1.maven.org/maven2 (http://repo1.maven.org/maven2/)


[INFO]
------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 1 minute
[INFO] Finished at: Thu Aug 21 10:20:31 BST 2008
[INFO] Final Memory: 43M/149M
[INFO]
------------------------------------------------------------------------

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Fuge-devel mailing list
Fuge-...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fuge-devel

Allyson Lister

unread,
Aug 21, 2008, 6:16:13 AM8/21/08
to fuge-...@lists.sourceforge.net
Hi Mark,

It seems that the state of my own personal maven repository (which did have a fuge-hibernate-identification jar due to an older version of the stk that never saw the light of day) meant that this error was hidden from me. I have removed the offending dependency (which isn't required) and will shortly commit the change.

The hibernate stk has only just been released, and not many have installed it other than the original developers, so my apologies for this.

The Hibernate STK depends on a jar produced by the XSD STK. This jar does not yet live in a maven repository to be automatically downloaded. However, I think I've found a maven repo that will be able to hold it (so you don't have to install the XSD STK as well). I should have that sorted this morning, too. I'll commit everything at once.

I'll reply again shortly!

Thanks, allyson

2008/8/21 Woodbridge, Mark R <m.wood...@imperial.ac.uk>



--
Thanks,
Allyson :)

Allyson Lister
Research Associate
Centre for Integrated Systems Biology for Ageing and Nutrition
Newcastle University
http://www.cisban.ac.uk
School of Computing Science
Newcastle University
Newcastle upon Tyne, NE1 7RU

Allyson Lister

unread,
Aug 21, 2008, 7:30:15 AM8/21/08
to fuge-...@lists.sourceforge.net
Hi Mark,

Everything's been committed. Run an svn update, then try to mvn install again, and let me know how it goes.

Thanks again,
Allyson

2008/8/21 Allyson Lister <a.l.l...@newcastle.ac.uk>

Woodbridge, Mark R

unread,
Aug 21, 2008, 9:11:02 AM8/21/08
to fuge-...@lists.sourceforge.net
Thanks Allyson. It works fine now, though I had to make a change to the top-level pom.xml. This has been noticed by someone else in the andromda bug tracker (http://www.andromda.org/jira/browse/ANDROMDAPP-40). It may be something incorrect with my setup, because obviously not everyone has this problem.
 
--- fuge-hibernate-mda/pom.xml (revision 52)
+++ fuge-hibernate-mda/pom.xml (working copy)
@@ -58,7 +58,7 @@
     </build>
     <properties>
   <maven.andromda.config>${pom.basedir}/src/main/config</maven.andromda.config>
-        <model.uri>file:${project.build.sourceDirectory}/FuGE-v1-profile.uml2</model.uri>
+        <model.uri>${pom.basedir}/src/main/uml/FuGE-v1-profile.uml2</model.uri>
         <!-- If you remove the empty filter element below, the aut-generated files will not be made-->
         <filter></filter>
         <validation>true</validation>
So I've built it, but I'm not really sure how to use it! I'm more interested in the schema and object/relational mapping than the XML binding. I've had a look at the tests, but maybe SyMBA is the best example of how to use it? Do I need to use Spring? Do I need to write the schema to the database somehow?
 
Apologies for my naive questions. Also: have you considered just uploading a jar to the website so that people can get started without having to build it all using maven?
 
Mark.


From: fuge-deve...@lists.sourceforge.net [mailto:fuge-deve...@lists.sourceforge.net] On Behalf Of Allyson Lister
Sent: 21 August 2008 12:30
To: fuge-...@lists.sourceforge.net
Subject: Re: [Fuge-devel] Problem building hibernate-stk

Allyson Lister

unread,
Aug 21, 2008, 9:39:26 AM8/21/08
to fuge-...@lists.sourceforge.net
Hi Mark,

Glad to hear you've got it built. The rest of my comments are inline...

2008/8/21 Woodbridge, Mark R <m.wood...@imperial.ac.uk>
Thanks Allyson. It works fine now, though I had to make a change to the top-level pom.xml. This has been noticed by someone else in the andromda bug tracker (http://www.andromda.org/jira/browse/ANDROMDAPP-40). It may be something incorrect with my setup, because obviously not everyone has this problem.
 
--- fuge-hibernate-mda/pom.xml (revision 52)
+++ fuge-hibernate-mda/pom.xml (working copy)
@@ -58,7 +58,7 @@
     </build>
     <properties>
   <maven.andromda.config>${pom.basedir}/src/main/config</maven.andromda.config>
-        <model.uri>file:${project.build.sourceDirectory}/FuGE-v1-profile.uml2</model.uri>
+        <model.uri>${pom.basedir}/src/main/uml/FuGE-v1-profile.uml2</model.uri>
         <!-- If you remove the empty filter element below, the aut-generated files will not be made-->
         <filter></filter>
         <validation>true</validation>

Thanks for this. I hadn't seen it before, but I'll add it to the installation docs as a possible pitfall. Out of curiosity, are you using windows? That's the platform that bug mentions.
 

So I've built it, but I'm not really sure how to use it! I'm more interested in the schema and object/relational mapping than the XML binding. I've had a look at the tests, but maybe SyMBA is the best example of how to use it? Do I need to use Spring? Do I need to write the schema to the database somehow?

No problem - the docs are never finished ;) There's always more that would be useful to put in. I'll try to answer these questions in a clear way, but please keep asking! There are no apologies needed - questions are always good!

What you have now that mvn install has run successfully is the following:
  • the ability to create a database
  • the ability to write/read data into the database, either directly with the Andromda-generated plain old java objects (POJOs), or indirectly via XML and the FuGE-ML - to - database mapping classes
The tests are designed to ensure that the roundtrip produces the correct information on output. There are currently two tests that fail, which is due to a bug (seemingly) in andromda. The reason for this is a problem where the many-2-many relationship between Software and Equipment is not getting filled. I have posted to the Andromda forum, but without luck yet. For full details of this failure, please see that post: http://galaxy.andromda.org/forum/viewtopic.php?t=5837 . In the meantime, all code will work without exceptions, but you lose all links that would normally be held in that table. There is a unit test which, if you run, will fail and illustrates the problem. You would also see the problem with the XmlDbRoundtripTest unit test, if I didn't purposefully remove those parts of the XML before comparison so that any other unknown errors would be displayed. Comparing the two XML files would result in missing equipment references in Software, and vice versa.

Spring is built into the code that you've just generated with the mvn install command, just as Hibernate is also built-in. With the way that Andromda works, you must use Spring to access the hibernate persistence layer, and therefore the database. This is all handled for you, however. Your main routes into the database are the DatabaseObjectHelper class (hand-written, not written by Andromda) which provides some convenience functions, and EntityService class, which is represented in the UML and which provides access to the Spring data access objects (DAO) via canned searches and other methods. The test code and the rest of the handwritten codebase makes extensive use of these classes so you can see how they work.

SyMBA (http://symba.sf.net) is a good way to see the Hibernate STK in action, although you don't need to use SyMBA if you don't want to. I can't help being a little biased here, as I am one of the main developers. It has a lot more features, including lsids, versioning, a web interface, web services, and more. It's still going through some final changes after the recent upgrade to FuGE Version 1, but feel free to have a play if you like. The sandbox install at http://www.cisban.ac.uk/symba-sandbox (Username "MickeyM", Pass "MousePass") shows the version just prior to the upgrade to FuGE Version 1. I'll update the sandbox to the latest version of SyMBA in the next few days.

But in the end, what you do next depends on your needs. If you already have a way to get the users to give you their information, perhaps all you need to do is map that information into FuGE objects via the hibernate stk code, and then load it into the database. This will save you from having to re-write any front end. If you need a front-end, you may want to consider SyMBA. Or, if you plan to build a community extension to FuGE, you may wish to use both the XSD STK (to generate your own XSD), and the hibernate STK to generate the corresponding database.

After mvn install, you can create your database automatically with another mvn command shown here: http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-books/fuge-hibernate/filling-the-databases.html (Of course, you'll need your database connection details to be correct in the trunk/pom.xml, as shown here: http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-books/fuge-hibernate/database-setup.html

Once you have the database built, you're ready to do whatever you want to it ;) If you let me know more about what you need, I can try to give you some advice.
 
 
Apologies for my naive questions. Also: have you considered just uploading a jar to the website so that people can get started without having to build it all using maven?

I do actually upload all SyMBA jars to the CARMEN maven repository, but I haven't done the same for this. The main reason is that not all of them are really all that much use on their own. For instance, the jars that contain the spring/hibernate classes contain the database connection details (passwords, usernames, jdbc urls, etc) specific to the person who ran the mvn install command. If someone else were to pull those down, they would be useful to look at class names and methods, but wouldn't work to connect to their own system. If you have a good idea about how to get around this, I'd be most interested. I definitely don't want jars going up somewhere with sensitive passwords in them ;)

The JAXB2 code is in a jar that's now available in the CARMEN maven repo - that's definitely a useful standalone tool, and but is just for XML manipulation and not database manipulation.

I hope this helps a little, and please keep on asking! :)
 
 
Mark.


From: fuge-deve...@lists.sourceforge.net [mailto:fuge-deve...@lists.sourceforge.net] On Behalf Of Allyson Lister
Sent: 21 August 2008 12:30
To: fuge-...@lists.sourceforge.net
Subject: Re: [Fuge-devel] Problem building hibernate-stk

Hi Mark,

Everything's been committed. Run an svn update, then try to mvn install again, and let me know how it goes.

Thanks again,
Allyson
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Fuge-devel mailing list
Fuge-...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fuge-devel

Woodbridge, Mark R

unread,
Aug 21, 2008, 10:19:29 AM8/21/08
to fuge-...@lists.sourceforge.net
> Thanks for this. I hadn't seen it before, but I'll add it to
> the installation docs as a possible pitfall. Out of
> curiosity, are you using windows? That's the platform that
> bug mentions.

I'm using Ubuntu 8.04, Java 1.6.0_06 and Maven 2.0.9.

> SyMBA (http://symba.sf.net) is a good way to see the
> Hibernate STK in action, although you don't need to use SyMBA
> if you don't want to. I can't help being a little biased
> here, as I am one of the main developers. It has a lot more
> features, including lsids, versioning, a web interface, web
> services, and more. It's still going through some final
> changes after the recent upgrade to FuGE Version 1, but feel
> free to have a play if you like. The sandbox install at
> http://www.cisban.ac.uk/symba-sandbox (Username "MickeyM",
> Pass "MousePass") shows the version just prior to the upgrade
> to FuGE Version 1. I'll update the sandbox to the latest
> version of SyMBA in the next few days.

Ok. I realise that I don't need to use SyMBA but I guess the codebase is
a good way to find out how this all fits together. I'll also take a look
at the classes you mentioned.

> After mvn install, you can create your database automatically
> with another mvn command shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/filling-the-databases.html (Of course,
> you'll need your database connection details to be correct in
> the trunk/pom.xml, as shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/database-setup.html

Thanks. I don't know how I missed that bit of the documentation!

> I do actually upload all SyMBA jars to the CARMEN maven
> repository, but I haven't done the same for this. The main
> reason is that not all of them are really all that much use
> on their own. For instance, the jars that contain the
> spring/hibernate classes contain the database connection
> details (passwords, usernames, jdbc urls, etc) specific to
> the person who ran the mvn install command. If someone else
> were to pull those down, they would be useful to look at
> class names and methods, but wouldn't work to connect to
> their own system. If you have a good idea about how to get
> around this, I'd be most interested. I definitely don't want
> jars going up somewhere with sensitive passwords in them ;)

You could rely on finding a runtime properties file on the classpath,
and failing on initialisation if it can't be found. But I understand the
problem. Actually, when I said jar I guess I meant a zip file -
containing the results of the mvn install. However, you'll still need
maven to create the schema! So perhaps not such a good idea.

Thanks again for all your help. I'm really grateful.

Mark.

--

Mark Woodbridge
CISBIC Data Management
Imperial College London

Allyson Lister

unread,
Aug 21, 2008, 10:33:46 AM8/21/08
to fuge-...@lists.sourceforge.net
Hi Mark,

Comments once again inline...

2008/8/21 Woodbridge, Mark R <m.wood...@imperial.ac.uk>
> Thanks for this. I hadn't seen it before, but I'll add it to

> the installation docs as a possible pitfall. Out of
> curiosity, are you using windows? That's the platform that
> bug mentions.

I'm using Ubuntu 8.04, Java 1.6.0_06 and Maven 2.0.9.

oh yeah - now I remember you mentioning that! :)


> SyMBA (http://symba.sf.net) is a good way to see the
> Hibernate STK in action, although you don't need to use SyMBA
> if you don't want to. I can't help being a little biased
> here, as I am one of the main developers. It has a lot more
> features, including lsids, versioning, a web interface, web
> services, and more. It's still going through some final
> changes after the recent upgrade to FuGE Version 1, but feel
> free to have a play if you like. The sandbox install at
> http://www.cisban.ac.uk/symba-sandbox (Username "MickeyM",
> Pass "MousePass") shows the version just prior to the upgrade
> to FuGE Version 1. I'll update the sandbox to the latest
> version of SyMBA in the next few days.

Ok. I realise that I don't need to use SyMBA but I guess the codebase is
a good way to find out how this all fits together. I'll also take a look
at the classes you mentioned.

Indeed - in my (biased) opinion, SyMBA is great, and if you want to get an application that already has bells and whistles (like a web interface), then it is a really good choice. We're also looking into upgrading the front-end to use GWT to make it a lot prettier, so we're constantly improving it. If you like it, you can always commit changes yourself and become a developer!

It's probably a good idea to have a look at the FuGE Hibernate STK code first, as it's much smaller than SyMBA, and gives you a good basic understanding of the structure before you have a look at SyMBA.
 


> After mvn install, you can create your database automatically
> with another mvn command shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/filling-the-databases.html (Of course,
> you'll need your database connection details to be correct in
> the trunk/pom.xml, as shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/database-setup.html

Thanks. I don't know how I missed that bit of the documentation!
> I do actually upload all SyMBA jars to the CARMEN maven
> repository, but I haven't done the same for this. The main
> reason is that not all of them are really all that much use
> on their own. For instance, the jars that contain the
> spring/hibernate classes contain the database connection
> details (passwords, usernames, jdbc urls, etc) specific to
> the person who ran the mvn install command. If someone else
> were to pull those down, they would be useful to look at
> class names and methods, but wouldn't work to connect to
> their own system. If you have a good idea about how to get
> around this, I'd be most interested. I definitely don't want
> jars going up somewhere with sensitive passwords in them ;)

You could rely on finding a runtime properties file on the classpath,
and failing on initialisation if it can't be found. But I understand the
problem. Actually, when I said jar I guess I meant a zip file -
containing the results of the mvn install. However, you'll still need
maven to create the schema! So perhaps not such a good idea.

Indeed - but the maven command that builds the database also creates two .sql files that are stored in another directory, showing you what was just run - these could then be added to the zip or jar files so that the user can build from them. It sounds like a good idea, but as always, I need to find the time. Generally these days new features etc come before such tasks. But, if you'd like to look into that as an alternative installation, I'd be happy to add you as a FuGE developer, which would allow you to modify the Hibernate STK ;)


Thanks again for all your help. I'm really grateful.

No problem at all. Glad to hear from people looking into the STKs.
 


Mark.

--

Mark Woodbridge
CISBIC Data Management
Imperial College London
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Fuge-devel mailing list
Fuge-...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fuge-devel

Allyson Lister

unread,
Aug 21, 2008, 11:29:09 AM8/21/08
to fuge-...@lists.sourceforge.net
Hi all,

Michael is having trouble posting to the list, so he's asked me to send this in on his behalf:

hi all,
 
thanks, allyson, as always for taking the lead in this.
 
"...map that information into FuGE objects..."
 
the only thing i would add is that this in-memory representation of the FuGE model and its extensions is what really gives this pattern/paradigm its power.  the code to write to/from XML and the database is already there for anyone.  it can also sit behind a variety of UI designs people come up with and can also be used to write to whatever backend is of interest.  it provides the common denominator.
 
cheers,
michael

Michael Miller
Lead Software Developer
Rosetta Biosoftware Business Unit
www.rosettabio.com



2008/8/21 Allyson Lister <a.l.l...@newcastle.ac.uk>
Hi Mark,

Comments once again inline...

2008/8/21 Woodbridge, Mark R <m.wood...@imperial.ac.uk>
> Thanks for this. I hadn't seen it before, but I'll add it to

> the installation docs as a possible pitfall. Out of
> curiosity, are you using windows? That's the platform that
> bug mentions.

I'm using Ubuntu 8.04, Java 1.6.0_06 and Maven 2.0.9.

oh yeah - now I remember you mentioning that! :)
> SyMBA (http://symba.sf.net) is a good way to see the
> Hibernate STK in action, although you don't need to use SyMBA
> if you don't want to. I can't help being a little biased
> here, as I am one of the main developers. It has a lot more
> features, including lsids, versioning, a web interface, web
> services, and more. It's still going through some final
> changes after the recent upgrade to FuGE Version 1, but feel
> free to have a play if you like. The sandbox install at
> http://www.cisban.ac.uk/symba-sandbox (Username "MickeyM",
> Pass "MousePass") shows the version just prior to the upgrade
> to FuGE Version 1. I'll update the sandbox to the latest
> version of SyMBA in the next few days.

Ok. I realise that I don't need to use SyMBA but I guess the codebase is
a good way to find out how this all fits together. I'll also take a look
at the classes you mentioned.

Indeed - in my (biased) opinion, SyMBA is great, and if you want to get an application that already has bells and whistles (like a web interface), then it is a really good choice. We're also looking into upgrading the front-end to use GWT to make it a lot prettier, so we're constantly improving it. If you like it, you can always commit changes yourself and become a developer!

It's probably a good idea to have a look at the FuGE Hibernate STK code first, as it's much smaller than SyMBA, and gives you a good basic understanding of the structure before you have a look at SyMBA.
 
> After mvn install, you can create your database automatically
> with another mvn command shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/filling-the-databases.html (Of course,
> you'll need your database connection details to be correct in
> the trunk/pom.xml, as shown here:
> http://fuge.sourceforge.net/stks/hibernate-stk/fuge-hibernate-
> books/fuge-hibernate/database-setup.html

Thanks. I don't know how I missed that bit of the documentation!
> I do actually upload all SyMBA jars to the CARMEN maven
> repository, but I haven't done the same for this. The main
> reason is that not all of them are really all that much use
> on their own. For instance, the jars that contain the
> spring/hibernate classes contain the database connection
> details (passwords, usernames, jdbc urls, etc) specific to
> the person who ran the mvn install command. If someone else
> were to pull those down, they would be useful to look at
> class names and methods, but wouldn't work to connect to
> their own system. If you have a good idea about how to get
> around this, I'd be most interested. I definitely don't want
> jars going up somewhere with sensitive passwords in them ;)

You could rely on finding a runtime properties file on the classpath,
and failing on initialisation if it can't be found. But I understand the
problem. Actually, when I said jar I guess I meant a zip file -
containing the results of the mvn install. However, you'll still need
maven to create the schema! So perhaps not such a good idea.

Indeed - but the maven command that builds the database also creates two .sql files that are stored in another directory, showing you what was just run - these could then be added to the zip or jar files so that the user can build from them. It sounds like a good idea, but as always, I need to find the time. Generally these days new features etc come before such tasks. But, if you'd like to look into that as an alternative installation, I'd be happy to add you as a FuGE developer, which would allow you to modify the Hibernate STK ;)


Thanks again for all your help. I'm really grateful.

No problem at all. Glad to hear from people looking into the STKs.
 
Mark.

--

Mark Woodbridge
CISBIC Data Management
Imperial College London
Reply all
Reply to author
Forward
0 new messages