Alessandro Bottoni
2009-12-14 09:55:21 UTC
Hi All,
I'm looking at the alternatives that are available for building the
persistence layer of a application in Tapestry 5 and I would be happy to
hear your opinion about a couple of topics:
1) I see that there is a support library for JPA and JPA2
(http://kenai.com/projects/tapestry-jpa) but the description page at
Kenai says that the project was started on september 2009 so I wonder:
Is this library already mature and usable, even for production?
2) Is it better to use JPA/JPA2 or Hibernate3 with Tapestry 5? Why?
(I would probably stick with Hibernate but I'm open to suggestions.)
3) In his Jumpstart's FAQ, Geoff Callender says:
"Why did the Data Access Object pattern ever exist? As I recall it had
two purposes: to abstract away the data sources, and to hide the
implementation of accessing the data. That is exactly what JPA (Java
Persistence Architecture, also known as EJB3 Persistence) does too. So I
argue that JPA has taken the place of the DAO and there's no need for us
to write our own. JumpStart uses JPA as its DAO."
(see: http://jumpstart.doublenegative.com.au/faq.html)
What do you think about this? Would you use the JPA entity also for
hosting some business logic? Would not this approach represent a net
lost of flexibilty (because of a lack of "loose coupling")?
4) Is there any good tutorial or any good working demo regarding the use
of Hibernate and/or Jpa with Tapestry5? At the moment I'm studying/using
the following tutorials and demos/apps.
a) HLS "quickstart" Maven archetype and "quickstart" tutorial at
http://tapestry.apache.org/ . (This does not cover any persistence topic
at all).
b) "Tapestry for non believers"
(http://www.infoq.com/articles/tapestry5-intro) (No persistence/ORM
covering)
c) AppFuse 2.1 (http://appfuse.org/display/APF/Home) (very good
"example" - covering persistence, security and a lot of other topics -
but also quite large and complex)
d) Tapestry Jumpstart (http://jumpstart.doublenegative.com.au/) (very
good but not covering Hibernate/JPA)
Is there anything else around worth mentioning?
TIA
I'm looking at the alternatives that are available for building the
persistence layer of a application in Tapestry 5 and I would be happy to
hear your opinion about a couple of topics:
1) I see that there is a support library for JPA and JPA2
(http://kenai.com/projects/tapestry-jpa) but the description page at
Kenai says that the project was started on september 2009 so I wonder:
Is this library already mature and usable, even for production?
2) Is it better to use JPA/JPA2 or Hibernate3 with Tapestry 5? Why?
(I would probably stick with Hibernate but I'm open to suggestions.)
3) In his Jumpstart's FAQ, Geoff Callender says:
"Why did the Data Access Object pattern ever exist? As I recall it had
two purposes: to abstract away the data sources, and to hide the
implementation of accessing the data. That is exactly what JPA (Java
Persistence Architecture, also known as EJB3 Persistence) does too. So I
argue that JPA has taken the place of the DAO and there's no need for us
to write our own. JumpStart uses JPA as its DAO."
(see: http://jumpstart.doublenegative.com.au/faq.html)
What do you think about this? Would you use the JPA entity also for
hosting some business logic? Would not this approach represent a net
lost of flexibilty (because of a lack of "loose coupling")?
4) Is there any good tutorial or any good working demo regarding the use
of Hibernate and/or Jpa with Tapestry5? At the moment I'm studying/using
the following tutorials and demos/apps.
a) HLS "quickstart" Maven archetype and "quickstart" tutorial at
http://tapestry.apache.org/ . (This does not cover any persistence topic
at all).
b) "Tapestry for non believers"
(http://www.infoq.com/articles/tapestry5-intro) (No persistence/ORM
covering)
c) AppFuse 2.1 (http://appfuse.org/display/APF/Home) (very good
"example" - covering persistence, security and a lot of other topics -
but also quite large and complex)
d) Tapestry Jumpstart (http://jumpstart.doublenegative.com.au/) (very
good but not covering Hibernate/JPA)
Is there anything else around worth mentioning?
TIA
--
Alessandro Bottoni
Website: http://www.alessandrobottoni.it/
"Beauty is a form of genius - is higher, indeed, than genius, as it
needs no explanation."
-- Oscar Wilde
Alessandro Bottoni
Website: http://www.alessandrobottoni.it/
"Beauty is a form of genius - is higher, indeed, than genius, as it
needs no explanation."
-- Oscar Wilde