I'm not sure that using java:app would help the need for adding
deployment hints. Unless, we detect that java:app (as a hint that
datasources will not be available early) in the datasource name and
disable entity enhancing (slowing performance).
On 01/31/2014 09:33 AM, Martin Andersson wrote:
I agree. I don't think mapping a datasource in jboss-web.xml is
such an
exotic use case. I should just work. Also, there is no hint anywere that
there is a property you can set to make it work.
The proprietary jboss namespace is not an option since I want to be
vendor neutral, but ear/java:app is definitely an option.
Br,
Martin Andersson
Java EE developer at
www.purplescout.se <
http://www.purplescout.se>
On Fri, Jan 31, 2014 at 3:03 PM, Eduardo Martins <emartins(a)redhat.com
<mailto:emartins@redhat.com>> wrote:
IMHO this hint should not be needed, a PU referencing a java:comp or
java:module datasource is already a hint that the PU will need a
resource bound by another component bundled in same jar/war.
By the way I’m not really a fan of using java:comp in a PU, it sets
an dependency on a EE component, and that doesn’t seem right.
Wouldn't be preferable to use the original
java:jboss/datasources/ExampleDS JNDI name, or use an ear and define
a java:app bind at application.xml, to be shared by all modules and
components?
—E
On 31 Jan 2014, at 13:13, Scott Marlow <smarlow(a)redhat.com
<mailto:smarlow@redhat.com>> wrote:
> Great, thanks for reporting the issue Martin! Great to bring more
> awareness of the deployment problem and workaround.
>
> Scott
> On 01/31/2014 08:04 AM, Martin Andersson wrote:
>> Thanks a lot!
>>
>> I can confirm that the app works now.
>>
>> Br,
>> Martin Andersson
>> Java EE developer at
www.purplescout.se
<
http://www.purplescout.se> <
http://www.purplescout.se>
>>
>>
>> On Fri, Jan 31, 2014 at 1:55 PM, Scott Marlow
<smarlow(a)redhat.com <mailto:smarlow@redhat.com>
>> <mailto:smarlow@redhat.com <mailto:smarlow@redhat.com>>>
wrote:
>>
>> Hi Arjan,
>>
>> Great catch! Your change and adding an persistence unit hint
that the
>> persistence unit doesn't need to be started early:
>>
>> <property name="wildfly.jpa.twophasebootstrap"
value="false"/>
>>
>> Helps the deployment succeed.
>>
>> It looks like ResourceReferenceProcessor is running during the
>> Phase.POST_MODULE deployment phase, so we need to add a hint
to the
>> persistence.xml, that helps the persistence unit deploy later.
>>
>> [6]
>>
https://github.com/wildfly/wildfly/blob/master/ee/src/main/java/org/jboss...
>>
>> Scott
>>
>> On 01/31/2014 06:25 AM, arjan tijms wrote:
>>> Hi,
>>>
>>> I looks like there's one bug in the example.
>>>
>>> jboss-web.xml defines jdbc/MyDS
>>>
>>> But persistence.xml references java:comp/env/MyDS
>>>
>>> Shouldn't the last one be at least java:comp/env/jdbc/MyDS?
>> Regardless,
>>> even with matching names it indeed doesn't work.
>>>
>>> Kind regards,
>>> Arjan Tijms
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Thu, Jan 30, 2014 at 9:52 PM, Scott Marlow
<smarlow(a)redhat.com <mailto:smarlow@redhat.com>
>> <mailto:smarlow@redhat.com <mailto:smarlow@redhat.com>>
>>> <mailto:smarlow@redhat.com <mailto:smarlow@redhat.com>
<mailto:smarlow@redhat.com <mailto:smarlow@redhat.com>>>> wrote:
>>>
>>> WFLY-2841 reports a deployment failure that occurs when a
>> deployments
>>> [1] persistence.xml, tries to use a resource reference [2]
>> for the
>>> datasource [3]. The error [4] mentions an unresolved
>> (DataSource)
>>> service dependency that is added to the persistence unit
>> service [5],
>>> instead of resolving the resource reference (and using the
>> underlying
>>> DataSource).
>>>
>>> How should we handle resource references for this case? Is
>> there a way
>>> to resolve the resource reference directly from deployers?
>> Or do we
>>> represent the resource reference as a service?
>>>
>>> Scott
>>>
>>> [1] test app is at
https://github.com/umartin/wfds/
>>>
>>> [2] jboss-web.xml
>>> <jboss-web>
>>> <context-root>/wfds</context-root>
>>> <resource-ref>
>>>
<res-ref-name>jdbc/MyDS</res-ref-name>
>>>
<res-type>javax.sql.DataSource</res-type>
>>>
>>>
<jndi-name>java:jboss/datasources/ExampleDS</jndi-name>
>>> </resource-ref>
>>> </jboss-web>
>>>
>>> [3] persistence.xml pu def
>>> <persistence-unit name="wfdsPU"
transaction-type="JTA">
>>>
<jta-data-source>java:comp/env/MyDS</jta-data-source>
>>> </persistence-unit>
>>>
>>> [4] {"JBAS014771: Services with missing/unavailable
>> dependencies" =>
>>>
>>
["jboss.persistenceunit.\"wfds-1.0-SNAPSHOT.war#wfdsPU\".__FIRST_PHASE__
>>> is missing
>>>
>>
[jboss.naming.context.java.module.\"wfds-1.0-SNAPSHOT\".\"wfds-1.0-SNAPSHOT\".env.MyDS]"]}
>>>
>>>
>>> [5]
>>>
>>
https://github.com/wildfly/wildfly/blob/master/jpa/core/src/main/java/org...
>>> _______________________________________________
>>> wildfly-dev mailing list
>>> wildfly-dev(a)lists.jboss.org
<mailto:wildfly-dev@lists.jboss.org>
<mailto:wildfly-dev@lists.jboss.org
<mailto:wildfly-dev@lists.jboss.org>>
>> <mailto:wildfly-dev@lists.jboss.org
<mailto:wildfly-dev@lists.jboss.org>
>> <mailto:wildfly-dev@lists.jboss.org
<mailto:wildfly-dev@lists.jboss.org>>>
>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>>
>>
>> _______________________________________________
>> wildfly-dev mailing list
>> wildfly-dev(a)lists.jboss.org <mailto:wildfly-dev@lists.jboss.org>
<mailto:wildfly-dev@lists.jboss.org
<mailto:wildfly-dev@lists.jboss.org>>
>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>
>>
>>
>>
>> --
>> Hälsningar,
>> Martin Andersson
>> Purple Scout AB
>> +46 732 05 14 01 <tel:%2B46%20732%2005%2014%2001>
>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev(a)lists.jboss.org <mailto:wildfly-dev@lists.jboss.org>
>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
--
Hälsningar,
Martin Andersson
Purple Scout AB
+46 732 05 14 01