isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeroen van der Wal <jer...@stromboli.it>
Subject Re: Few questions
Date Thu, 12 Dec 2013 19:43:17 GMT
Hi Satyendra, welcome to this list.

I don't totally agree on Dan's answer on your first question, should one
learn JDO in able to use Isis. Annotating a class with @PersistenceCapable
and annotation fields of types that are not persisted by default (like
LocalDate) [1] is enough to get your application running. You need to dive
into JDO when you want to tap into the power of your database for faster
repository queries but for prototyping you can easily use Java code to do
the work. It is at least the way I gradually moved into JDO.

Datanucleus, the objectstore the we (and Google App Engine) use has an
interesting JDO vs JPA faq [2], JDO itself goes even a step further by
stating that "JPA is subset of JDO" [3][4] so moving to JPA would IMHO only
limit Isis's capabilities.

But instead of focusing on the differences between the two I should point
out that the API is quite similar and a programmer with JPA skills should
have no difficulty with JDO.

Cheers,

Jeroen

[1] http://www.datanucleus.org/products/datanucleus/jdo/types.html
[2] http://www.datanucleus.org/products/accessplatform_2_1/jdo_jpa_faq.html
[3] http://db.apache.org/jdo/jdo_v_jpa.html
[4] http://db.apache.org/jdo/jdo_v_jpa_orm.html


On Thu, Dec 12, 2013 at 7:58 PM, Dan Haywood
<dan@haywood-associates.co.uk>wrote:

> On 12 December 2013 18:34, Satyendra Singh <ssingh@apollo-advisors.com
> >wrote:
>
> > I have few questions on ISIS usage.
> >
> >
> > 1)      I am assuming one has to learn JDO and its DataNucleus
> > implementation to be able to use it, right?
> >
>
> Practically speaking, yes.
>
> In theory, Isis does support multiple object store implementations.  To
> date, the only ones released as the JDO/DataNucleus objectstore and - for
> prototyping onlt - the in-memory objectstore.
>
> I would recommend using JDO OS throughout, even for prototyping, though.
>  There are subtle differences between the implementations, for example the
> way in which bidirectional relationships are (with the appropriate JDO
> annotations) automatically managed by the JDO OS.
>
>
>
>
> >
> > 2)      I am looking for a plain set of instructions, 'step by step' kind
> > of, to be able to build a simple application myself, but so far I have
> not
> > found any. There is a lot of information out there on various concepts
> but
> > they don't give you a simplified picture on 'n' things you need to do to
> be
> > able to bring up a domain object to screen using ISIS and than I could go
> > learning each step in detail, if required.
> >
> >
> One resource I can point you to is a github repo [1] I put together for a
> conference talk [2].  I don't know how good the talk was, but the tags in
> that repo (22 of em) should give you a good idea of how an Isis app can be
> built up.
>
>
>
> > 3)      For a real word application, I need to be able to implement using
> > a domain object that has one-to-one, one-to-many, many-to-one
> relationship
> > with other domain object(s), is there any sample application that I can
> use
> > as starting point for this.
> >
> >
> Yes, there's [1] as mentioned, you can also take a look at Estatio [3],
> which is the app that Jeroen (one of the other Isis committers) and I have
> been working on.
>
>
>
> > 4)      Is  it possible to replace JDO with JPA as JPA skill is more
> > easily available that JDO ?
> >
>
> Not currently.  DataNucleus does support the JPA API, so this is certainly
> do-able; but it's not a priority at the moment.
>
> Oscar - one of our other committers - might also want to say something; he
> came to Isis from a JPA standpoint also.
>
>
>
>
>
> > Thank you very much
> >
> > Satyendra
> >
> >
> >
> You're welcome - any more questions, just ask.
>
> Cheers
> Dan
>
>
>
> [1] https://github.com/danhaywood/rrraddd-isis-131
> [2]
>
> http://oredev.org/2013/wed-fri-conference/rrraddd-ridiculously-rapid-domain-driven-and-restful-apps-with-apache-isis
> [3] https://github.com/estatio/estatio
>
>
> >
> > This email and any files transmitted with it are confidential
> > and intended solely for the person or entity to whom they are
> > addressed and may contain confidential and/or privileged
> > material.  Any review, retransmission, dissemination or
> > other use of, or taking of any action in reliance upon this
> > information by persons or entities other than the intended
> > recipient is prohibited.  If you have received this email in
> > error please contact the sender and delete the material from
> > any computer.
> >
> > Apollo Global Management, LLC
> >
> >
> >
> >
>

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