[wildfly-dev] How to deal with resource refs when deploying JPA container managed entity managers (WFLY-2841)

Scott Marlow smarlow at redhat.com
Thu Jan 30 15:52:25 EST 2014


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/jboss/as/jpa/processor/PersistenceUnitServiceHandler.java#L358


More information about the wildfly-dev mailing list