[off topic]personally i'd love to get rid of JNDI, then be able to for
instance use a producer to get the datasource - would need a lot of
changes in the spec and the ability to configure from the server some
common producers for apps but would be far easier then - just my
opinion[/]

Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau



2012/12/14 Baker, Trevor <crba...@mail.ubc.ca>:
> Yup. I've never heard of a portable jta-data-source. I see a lot examples 
> (even the Java EE tutorial) using 'jdbc/MyDS' because that's the Glassfish 
> ref impl way of doing it. Hopefully in the future they can make it more 
> portable like the EJB 3.1 spec on naming. If you remember that spec, I would 
> love to see it.
>
> D'uh. Properties in arquillian.xml. Forgot about that. Many thanks.
>
> Trev
>
> -----Original Message-----
> From: Romain Manni-Bucau [mailto:rmannibu...@gmail.com]
> Sent: Friday, December 14, 2012 1:11 AM
> To: users@openejb.apache.org
> Subject: Re: openejb.xml
>
> well,
>
> if you want a global name use java:openejb/Resource... one...but that's not 
> portable at all, thought i saw either in JPA spec or JavaEE (can't recall 
> ATM) the name was not absolute.
>
> about arquillian you can put the properties in arquillian.xml with our 
> adapter...not sure what you do in fact
>
> Romain Manni-Bucau
> Twitter: @rmannibucau
> Blog: http://rmannibucau.wordpress.com/
> LinkedIn: http://fr.linkedin.com/in/rmannibucau
> Github: https://github.com/rmannibucau
>
>
>
> 2012/12/14 Baker, Trevor <crba...@mail.ubc.ca>:
>> Hi Romain,
>>
>> From:
>> http://download.oracle.com/otndocs/jcp/persistence-2.0-fr-eval-oth-JSp
>> ec/
>>
>> <snippet>
>> 8.2.1.5 jta-data-source, non-jta-data-source In Java EE environments,
>> the jta-data-source and non-jta-data-source elements are used to
>> specify the global JNDI name of the JTA and/or non-JTA data source to
>> be used by the persistence provider. If neither is specified, the
>> deployer must specify a JTA data source at deployment or a JTA data
>> source must be provided by the container, and a JTA EntityManagerFactory 
>> will be created to correspond to it.
>>
>> These elements name the data source in the local environment; the
>> format of these names and the ability to specify the names are product 
>> specific.
>> </snippet>
>>
>> Specifically the "elements are used to specify the *global JNDI name*". 
>> Granted that the "format of these names and the ability to specify the names 
>> are product specific". That's why it's 'java:/DefaultDS' (JBoss 6) or 
>> 'java:jboss/datasources/ExampleDS' (JBoss 7) or 'jdbc/__default' (Glassfish) 
>> etc... and if the code does a new InitialContext("java:/DefaultDS") it will 
>> get that datasource.
>>
>> Where you getting your info from about standards?
>>
>> So back to OpenEJB ... <jta-data-source>foo</jta-data-source> ... I cannot 
>> get datasource if I do new InitialContext("foo") because it's actually new 
>> InitialContext("java:openejb/Resource/xyz") or whatever the resource name 
>> is. It doesn't match up.
>>
>> Some samples to the above that I noticed ...
>>
>> #1. I don't have an OpenEJB managed datasource, but I have my own DBCP that 
>> I manually loaded into JNDI at java:/jdbc/arquillian/dbUnitDS (not sure how 
>> this setup will play out with JTA). I get this in the log:
>> INFO - Adjusting PersistenceUnit test <jta-data-source> to Resource ID 
>> 'Default JDBC Database' from '/jdbc/arquillian/dbUnitDS'
>>
>> #2. I have <jta-data-source>blah</jta-data-source> and 
>> dbUnitDS=new://Resource?type=DataSource. I get this in the log:
>> INFO - Adjusting PersistenceUnit test <jta-data-source> to Resource ID 
>> 'dbUnitDS' from 'blah'
>>
>> Okay... thanks... I would have preferred an error and have to correct 
>> (align) the entries.
>>
>> I don't know what the behaviour would be if I had multiple OpenEJB managed 
>> datasources. Didn't try it.
>>
>> I appreciate the discussion on the format of <jta-data-source>, but like 
>> said earlier it's how OpenEJB swaps it out behind the scenes that throws me 
>> off as, IMHO, it doesn't respect the global JNDI entry that I put in there.
>>
>> Am I missing something?
>>
>>
>> Wow... this is really getting off-topic to my initial question. Good 
>> discussion, though. I'll try to get back on track ...
>>
>> I'm going to change the name from jndi.properties to something custom 
>> (openejb.properties) and create some custom glue Arquillian extension to 
>> load the contents of the file and set the entries in InitialContext. I think 
>> that will work. Some hoping I wouldn't have write up some custom thing for 
>> this. Oh well. C'est la vie.
>>
>> Sorry for the long email.
>>
>> Thanks,
>> Trev
>>
>> -----Original Message-----
>> From: Romain Manni-Bucau [mailto:rmannibu...@gmail.com]
>> Sent: Thursday, December 13, 2012 3:08 PM
>> To: users@openejb.apache.org
>> Subject: Re: openejb.xml
>>
>> wrong "<jta-data-source>foo</jta-data-source>" is the standard.
>> java:... names are not. You can use java:openejb/Resource/foo too i
>> guess...but well not better ;)
>>
>> OpenEJB 4.5.1 should support java:global or java:app (can't remember) names 
>> for datasources. But well clearly not something portable between application 
>> servers.
>>
>> about root utl we can't guess it from arquillian so the heuristic is to use 
>> the place where persistence.xml is (well it is the marker then we update it).
>>
>> You can't compare openejb to jboss or was because openejb arquilliana
>> dapter doesn't dump the archive on the disk. If you need it use tomee
>> remote arquillian adapter (or embedded) maybe
>>
>>
>> Romain Manni-Bucau
>> Twitter: @rmannibucau
>> Blog: http://rmannibucau.wordpress.com/
>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> Github: https://github.com/rmannibucau
>>
>>
>>
>> 2012/12/13 Baker, Trevor <crba...@mail.ubc.ca>:
>>> <jta-data-source>foo</jta-data-source>

Reply via email to