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 <[email protected]>
>To: Mark Struberg <[email protected]>; [email protected] 
>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" <[email protected]> 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 <[email protected]>
>>>To: Romain Manni-Bucau <[email protected]>; deltaspike 
>>><[email protected]>
>>>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 <[email protected]>
>>>>To: Mark Struberg <[email protected]>
>>>>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" <[email protected]> a écrit :
>>>>
>>>>yes, that crashes the container...
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>________________________________
>>>>>> From: Romain Manni-Bucau <[email protected]>
>>>>>>To: Mark Struberg <[email protected]>; [email protected]
>>>>>>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" <[email protected]> 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</connection-url>
>>>>>>>                <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 <[email protected]>
>>>>>>>> To: [email protected]; Mark Struberg 
>>>>>>>> <[email protected]>
>>>>>>>> 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
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>
>

Reply via email to