deltaspike-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <rmannibu...@gmail.com>
Subject Re: AW: AW: AW: AW: AW: AW: [DISCUSS] deltaspike-jpa module features
Date Sun, 06 May 2012 14:18:12 GMT
http://docs.oracle.com/cd/B31017_01/web.1013/b28221/usclient005.htm it
explains this usage...IMO it doesnt change a lot the issue
Le 6 mai 2012 16:09, "Romain Manni-Bucau" <rmannibucau@gmail.com> a écrit :

> Yep but an em needs an emf ;)
> Le 6 mai 2012 16:05, "Arne Limburg" <arne.limburg@openknowledge.de> a
> écrit :
>
>> OK, I think, this is not correct since it expresses a dependency to an
>> EntityManager and not to an EntityManagerFactory (in opposition to
>> @PersistenceUnit).
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> Gesendet: Sonntag, 6. Mai 2012 16:00
>> An: deltaspike-dev@incubator.apache.org
>> Betreff: Re: AW: AW: AW: AW: AW: [DISCUSS] deltaspike-jpa module features
>>
>> It tomee we create the entitymanagerfactory associated.
>> Le 6 mai 2012 15:53, "Arne Limburg" <arne.limburg@openknowledge.de> a
>> écrit :
>>
>> > OK and the meaning of this annotation at class-level would be:
>> > "a dependency on a container-managed entity manager and its associated
>> > persistence context." That's perfectly the semantics we need ;-)
>> >
>> > But what would a jee container do when he observes such annotation at
>> > class-level? I can't read it from the spec...
>> > I think, we have to try... Or does someone at this list know?
>> >
>> > -----Ursprüngliche Nachricht-----
>> > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > Gesendet: Sonntag, 6. Mai 2012 15:49
>> > An: deltaspike-dev@incubator.apache.org
>> > Betreff: Re: AW: AW: AW: AW: [DISCUSS] deltaspike-jpa module features
>> >
>> > The container will scan persistencecontext annotation with no link
>> > with cdi.
>> > Le 6 mai 2012 15:46, "Arne Limburg" <arne.limburg@openknowledge.de> a
>> > écrit :
>> >
>> > > If so, what would be the semantic of such definition?
>> > > Btw. that classes would only become CDI beans when the deployment is
>> > > in the correct project stage. Otherwise we would veto them away,
>> > > before they become beans...
>> > > And, which part of the jee container would scan that class? My guess
>> > > is, that it would be the responsibility of the CDI implementation.
>> > > And
>> > > - just a second guess - they ignore it...
>> > >
>> > > I'll take a look into the JPA spec to see what the official semantic
>> > > of the usage I proposed would be. But, I am afraid that this is
>> > > underspecified...
>> > >
>> > > -----Ursprüngliche Nachricht-----
>> > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > > Gesendet: Sonntag, 6. Mai 2012 15:40
>> > > An: deltaspike-dev@incubator.apache.org
>> > > Betreff: Re: AW: AW: AW: [DISCUSS] deltaspike-jpa module features
>> > >
>> > > Cdi is in jee so jee containers scans cdi beans and same for
>> > > resources (@persistencontext).
>> > > Le 6 mai 2012 15:36, "Arne Limburg" <arne.limburg@openknowledge.de>
>> > > a écrit :
>> > >
>> > > > If not, we can use other annotations, but I think jee containers
>> > > > just scan EJBs...
>> > > >
>> > > > -----Ursprüngliche Nachricht-----
>> > > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > > > Gesendet: Sonntag, 6. Mai 2012 15:28
>> > > > An: deltaspike-dev@incubator.apache.org
>> > > > Betreff: Re: AW: AW: [DISCUSS] deltaspike-jpa module features
>> > > >
>> > > > Not sure it works in a jee container.
>> > > >
>> > > > - Romain
>> > > > Le 6 mai 2012 15:26, "Arne Limburg"
>> > > > <arne.limburg@openknowledge.de> a écrit :
>> > > >
>> > > > > You could configure your production jta-datasource in the
>> > > > > persistence.xml and add the following bean to your test
>> deployment:
>> > > > >
>> > > > > @Exclude(exceptIfProjectStage =
>> > > > > ProjectStage.IntegrationTest.class)
>> > > > > @PersistenceContext(unitName = "myPU", properties =
>> > > > > @PersistenceProperty(name =
>> > > > > "javax.persistence.nonJtaDataSource",
>> > > > > value =
>> > > > > "java:/comp/env/myDS"))
>> > > > > public class MyIntegrationTestConfiguration { }
>> > > > >
>> > > > > For local testing, you could even switch off JNDI:
>> > > > > @Exclude(exceptIfProjectStage = ProjectStage.Development.class)
>> > > > > @PersistenceContext(unitName = "myPU", properties =
>> > > > > {@PersistenceProperty(name =
>> > > > > "javax.persistence.transactionType",
>> > > > > value = "RESOURCE_LOCAL"),
>> > > > >
>> > > > >                              @PersistenceProperty(name =
>> > > > > "javax.persistence.jdbc.url", value = "jdbc:h2:mem:myDB"), ...})
>> > > > > public class MyDevelopmentConfiguration { }
>> > > > >
>> > > > > WDYT?
>> > > > >
>> > > > > Romain,
>> > > > > Noone needs to repackage his application, since we can put this
>> > > > > properties into a map and use it as the second parameter of
>> > > > emf.createEntityManager...
>> > > > >
>> > > > > - Arne
>> > > > >
>> > > > > -----Ursprüngliche Nachricht-----
>> > > > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > > > > Gesendet: Sonntag, 6. Mai 2012 15:14
>> > > > > An: deltaspike-dev@incubator.apache.org
>> > > > > Betreff: Re: AW: [DISCUSS] deltaspike-jpa module features
>> > > > >
>> > > > > How do you manage it from persistence.xml if you dont repackage
>> > > > > your archive as Mark said?
>> > > > >
>> > > > > Personally i agree ;)
>> > > > >
>> > > > > - Romain
>> > > > > Le 6 mai 2012 15:06, "Arne Limburg"
>> > > > > <arne.limburg@openknowledge.de> a écrit :
>> > > > >
>> > > > > > OK,
>> > > > > > but do we really need a container-independent way for
>> > > JNDI-DataSources?
>> > > > > > What's the use case for it?
>> > > > > > The user always knows his container and thus his specific
>> > JNDI-name.
>> > > > > >
>> > > > > > I think we need an easy way for users to configure different
>> > > > > > JNDI-DataSources for different deployment scenarios, like
>> > > > > > - a JTA-datasource for my JBoss AS 7 in production
>> > > > > > - a Non-JTA-datasource from another JNDI-location for the
>> > > > > > Tomcat for testing
>> > > > > > - a RESOURCE_LOCAL EntityManager for local testing...
>> > > > > >
>> > > > > > We need to find an easy way for the users to configure the
>> > > > > > JNDI-location, but imho we don't need to handle different
>> > > > > > JNDI-locations
>> > > > > in our code?
>> > > > > >
>> > > > > > WDYT? Am I missing a use case?
>> > > > > >
>> > > > > > Cheers,
>> > > > > > Arne
>> > > > > >
>> > > > > > -----Ursprüngliche Nachricht-----
>> > > > > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > > > > > Gesendet: Sonntag, 6. Mai 2012 14:49
>> > > > > > An: Mark Struberg; deltaspike-dev@incubator.apache.org
>> > > > > > Betreff: Re: [DISCUSS] deltaspike-jpa module features
>> > > > > >
>> > > > > > ConfigurableDataSource doesnt solve it. If you build the
emf
>> > > > > > from persistence info you manage it yourself. It should
be IMO
>> > > > > > a compatibility mode and spec you be fixed.
>> > > > > >
>> > > > > > But well, the most important subjects are not here,
>> > > > > > pagination, dynamic dao etc are really more valuable.
>> > > > > >
>> > > > > > - Romain
>> > > > > > Le 6 mai 2012 14:44, "Mark Struberg" <struberg@yahoo.de>
a
>> écrit :
>> > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > > > The problem here is that this is NOT under our control
-
>> > > > > > > this is not even CDI related!
>> > > > > > >
>> > > > > > > You need to _exactly_ specify the JNDI location in
your
>> > > > > persistence.xml.
>> > > > > > > And this info get's parsed by JPA or the EE container
at
>> > > > > > > deploy
>> > > time.
>> > > > > > >
>> > > > > > >
>> > > > > > > Maybe there's a trick with a PersistenceUnitInfo. But
since
>> > > > > > > those are also managed by the server (and thus show
the same
>> > > > > > > unspecified
>> > > > > > > behaviour) we imo cannot leverage those.
>> > > > > > >
>> > > > > > > LieGrue,
>> > > > > > > strub
>> > > > > > >
>> > > > > > >
>> > > > > > > >________________________________
>> > > > > > > > From: Romain Manni-Bucau <rmannibucau@gmail.com>
>> > > > > > > >To: Mark Struberg <struberg@yahoo.de>;
>> > > > > > > deltaspike-dev@incubator.apache.org
>> > > > > > > >Sent: Sunday, May 6, 2012 2:37 PM
>> > > > > > > >Subject: Re: [DISCUSS] deltaspike-jpa module features
>> > > > > > > >
>> > > > > > > >
>> > > > > > > >I understand. On another side how many differeny
locations
>> > > > > > > >are
>> > > > there?
>> > > > > > > Isnt it manageable?
>> > > > > > > >- Romain
>> > > > > > > >Le 6 mai 2012 14:29, "Mark Struberg" <struberg@yahoo.de>
a
>> > > > > > > >écrit
>> > > :
>> > > > > > > >
>> > > > > > > >
>> > > > > > > >>
>> > > > > > > >>PS: I _fully_ agree that this mess should best
get fixed
>> > > > > > > >>in
>> > EE7.
>> > > > > > > >>But
>> > > > > > > sadly we also need to support older containers!
>> > > > > > > >>
>> > > > > > > >>I know about folks who have OWB and CODI running
on old
>> > > > > > > >>WebSphere
>> > > > > > > >>6 and
>> > > > > > > 7 servers. And others who use OWB on WebLogic 10.3.
And
>> > > > > > > those companies are big banks, stock exchanges and
>> > > > > > > insurrance companies
>> > > > > > > - they cannot easily upgrade to a new server...
>> > > > > > > >>
>> > > > > > > >>LieGrue,
>> > > > > > > >>strub
>> > > > > > > >>
>> > > > > > > >>
>> > > > > > > >>
>> > > > > > > >>
>> > > > > > > >>
>> > > > > > > >>>________________________________
>> > > > > > > >>> From: Mark Struberg <struberg@yahoo.de>
>> > > > > > > >>>To: Romain Manni-Bucau <rmannibucau@gmail.com>;
>> > > > > > > >>>deltaspike <
>> > > > > > > deltaspike-dev@incubator.apache.org>
>> > > > > > > >>>Sent: Sunday, May 6, 2012 2:14 PM
>> > > > > > > >>>Subject: Re: [DISCUSS] deltaspike-jpa module
features
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>No, the container is NOT buggy, because
it's simply NOT
>> > defined!
>> > > > > > > >>>That's the whole mess about JNDI...
>> > > > > > > >>>
>> > > > > > > >>>LieGrue,
>> > > > > > > >>>strub
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>>________________________________
>> > > > > > > >>>> From: Romain Manni-Bucau <rmannibucau@gmail.com>
>> > > > > > > >>>>To: Mark Struberg <struberg@yahoo.de>
>> > > > > > > >>>>Sent: Sunday, May 6, 2012 2:01 PM
>> > > > > > > >>>>Subject: Re: [DISCUSS] deltaspike-jpa
module features
>> > > > > > > >>>>
>> > > > > > > >>>>
>> > > > > > > >>>>So this container is buggy, report
an issue ;) Thinking
>> > > > > > > >>>>of it this jndi path issue couldnt
be resolved by
>> > > > > > > configresolvers in ds?
>> > > > > > > >>>>- Romain
>> > > > > > > >>>>Le 6 mai 2012 13:58, "Mark Struberg"
<struberg@yahoo.de>
>> > > > > > > >>>>a
>> > > > écrit :
>> > > > > > > >>>>
>> > > > > > > >>>>yes, that crashes the container...
>> > > > > > > >>>>>
>> > > > > > > >>>>>
>> > > > > > > >>>>>
>> > > > > > > >>>>>
>> > > > > > > >>>>>
>> > > > > > > >>>>>>________________________________
>> > > > > > > >>>>>> From: Romain Manni-Bucau <rmannibucau@gmail.com>
>> > > > > > > >>>>>>To: Mark Struberg <struberg@yahoo.de>;
>> > > > > > > deltaspike-dev@incubator.apache.org
>> > > > > > > >>>>>>Sent: Sunday, May 6, 2012 1:52
PM
>> > > > > > > >>>>>>Subject: Re: [DISCUSS] deltaspike-jpa
module features
>> > > > > > > >>>>>>
>> > > > > > > >>>>>>
>> > > > > > > >>>>>>Mark, did you try providing
a name starting with java:?
>> > > > > > > >>>>>>- Romain
>> > > > > > > >>>>>>Le 6 mai 2012 13:49, "Mark
Struberg"
>> > > > > > > >>>>>><struberg@yahoo.de> a
>> > > > > écrit :
>> > > > > > > >>>>>>
>> > > > > > > >>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>David, exactly this doesn't
work out in practice!
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>look at jboss5 datasource
xml as an example:
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>><?xml version="1.0"
encoding="UTF-8"?> <datasources>
>> > > > > > > >>>>>>>        <local-tx-datasource>
>> > > > > > > >>>>>>>                <jndi-name>myDS</jndi-name>
>> > > > > > > >>>>>>>
>> > > > > > > <connection-url>jdbc:postgresql://someserver:5432/someDb</co
>> > > > > > > nn
>> > > > > > > ec
>> > > > > > > ti
>> > > > > > > on
>> > > > > > > -u
>> > > > > > > rl>
>> > > > > > > >>>>>>>                <user-name>user</user-name>
>> > > > > > > >>>>>>>                <password>pwd</password>
>> > > > > > > >>>>>>>
>> > > > > > > <driver-class>org.postgresql.Driver</driver-class>
>> > > > > > > >>>>>>>        </local-tx-datasource>
</datasources>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>This will create the following
JNDI location in
>> JBossAS5:
>> > > > > > > >>>>>>>java:/myDS
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>NO comp, NO lang, NO other
qualifier.
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>Configuring the same in
Geronimo gives you
>> > > > > > > >>>>>>>java:/comp/env/myDS and
it's again COMPLETEY
>> > > > > > > >>>>>>>different in JBossAS6,
AS7, Glassfish,
>> > > > > > > TomEE, etc
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>Thus: which JNDI location
would you configure in your
>> > > > > > > persistence.xml?
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>That's the reason why we
came up with the
>> > > > > ConfigurableDataSource.
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>Of course, we need to extend
this concept and create
>> > > > > > > >>>>>>>a
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>public interface ConfigurableXaDataSource
extends
>> > > > > > > ConfigurableDataSource, XaDataSource {}
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>See what I mean?
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>LieGrue,
>> > > > > > > >>>>>>>strub
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>>----- Original Message
-----
>> > > > > > > >>>>>>>> From: David Blevins
<david.blevins@gmail.com>
>> > > > > > > >>>>>>>> To: deltaspike-dev@incubator.apache.org;
Mark
>> > > > > > > >>>>>>>> Struberg <
>> > > > > > > struberg@yahoo.de>
>> > > > > > > >>>>>>>> Cc:
>> > > > > > > >>>>>>>> Sent: Sunday, May
6, 2012 1:25 PM
>> > > > > > > >>>>>>>> Subject: Re: [DISCUSS]
deltaspike-jpa module
>> > > > > > > >>>>>>>> features
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>> On May 6, 2012, at
2:37 AM, Mark Struberg wrote:
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>>>>  In plain
Tomcat or  Jetty servers this needs to
>> > > > > > > >>>>>>>>>> be configured
in a
>> > > > > > > container-specific way.
>> > > > > > > >>>>>>>>>  The problem with
the container specific stuff is
>> > > > > > > >>>>>>>>> that every
>> > > > > > > container
>> > > > > > > >>>>>>>> serves the xml configured
datasource on a different
>> > > > > > > >>>>>>>> location in
>> > > > > > > JNDI! So you
>> > > > > > > >>>>>>>> cannot provide a container
independent
>> > > > > > > >>>>>>>> implementation that
way :/
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>> The portable way would
be to declare your
>> > > > > > > >>>>>>>> datasource properly
via
>> > > > > > > >>>>>>>> @Resource(name="java:app/Foo",
>> > > > > > > >>>>>>>> type=DataSource.class)
or via <resource-ref> xml.
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>> Most servers can map
those references with little
>> > > > > > > >>>>>>>> to no
>> > > > > config.
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>> -David
>> > > > > > > >>>>>>>>
>> > > > > > > >>>>>>>
>> > > > > > > >>>>>>
>> > > > > > > >>>>>>
>> > > > > > > >>>>
>> > > > > > > >>>>
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>>
>> > > > > > > >>
>> > > > > > > >
>> > > > > > > >
>> > > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
>

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