[
https://issues.jboss.org/browse/WFLY-2727?page=com.atlassian.jira.plugin....
]
Scott Marlow commented on WFLY-2727:
------------------------------------
{quote}
Maybe I don't fully understand, but since Hibernate is used by WildFly and part of the
JBoss community, what is stopping things from working out of the box now? Or is the
extension you mention for a version of Hibernate newer than what WildFly is currently
using?
{quote}
We did implement the 2-phase PU bootstrap in Hibernate (as an extension), however, we
(Hibernate) still needs access to the datasource in the first phase. With regard to
DataSourceDefinition, I think it will help when HHH-8659 is addressed in Hibernate (to
move datasource access to the second pu bootstrap phase).
{quote}
Okay, so that's indeed more clear. But practically speaking there's also the issue
now that users have to add the above mentioned property, isn't there? Since
@DataSourceDefinition is largely an ease-of-use feature, this may be a bit problematic for
exactly those users who are the intended target. If the issue can't be solved
otherwise for the short term, would it be an option to provide a hint to the user when
logging the error that this property needs to be set?
{quote}
I agree, that it is an issue that the user has to know to add the property. In this case,
the thrown error is generic and doesn't understand the context of what is causing the
error. It would be pretty cool if WildFly could determine that it is a datasource error
and that the @DataSourceDefinition isn't available. Even better, if a suggestion to
address the failure (add a PU hint) could be given.
{quote}
This sounds like a very important improvement indeed and certainly worth it to create a
JIRA issue on the JPA tracker for.
{quote}
Great idea!
@DataSourceDefinition defined data source can't be used in
persistence.xml with CDI entity listeners
----------------------------------------------------------------------------------------------------
Key: WFLY-2727
URL:
https://issues.jboss.org/browse/WFLY-2727
Project: WildFly
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: EE, JPA / Hibernate
Affects Versions: 8.0.0.CR1
Reporter: arjan tijms
Assignee: Scott Marlow
Defining a data source from within the application using either {{@DataSourceDefinition}}
on a class or the {{data-source}} element in {{web.xml}}, and then using this in
{{persistence.xml}} will cause a deployment failure.
E.g.
{code:xml|title=web.xml}
<data-source>
<name>java:app/MyApp/MyDS</name>
<class-name>org.h2.jdbcx.JdbcDataSource</class-name>
<url>jdbc:h2:mem:test</url>
</data-source>
{code}
and
{code:xml|title=persistence.xml}
<persistence-unit name="testPU">
<jta-data-source>java:app/MyApp/MyDS</jta-data-source>
</persistence-unit>
{code}
will result in:
{noformat}
ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 3)
JBAS014613: Operation ("deploy") failed - address: ([("deployment"
=> "dca783dd-b383-4a16-85a4-1331a2f89354.war")]) - failure description:
{"JBAS014771: Services with missing/unavailable dependencies" =>
["jboss.persistenceunit.\"dca783dd-b383-4a16-85a4-1331a2f89354.war#testPU\".__FIRST_PHASE__
is missing
[jboss.naming.context.java.app.dca783dd-b383-4a16-85a4-1331a2f89354.MyApp.MyDS]"]}
ERROR [org.jboss.as.server] (management-handler-thread - 3) JBAS015870: Deploy of
deployment "dca783dd-b383-4a16-85a4-1331a2f89354.war" was rolled back with the
following failure message: {"JBAS014771: Services with missing/unavailable
dependencies" =>
["jboss.persistenceunit.\"dca783dd-b383-4a16-85a4-1331a2f89354.war#testPU\".__FIRST_PHASE__
is missing
[jboss.naming.context.java.app.dca783dd-b383-4a16-85a4-1331a2f89354.MyApp.MyDS]"]}
{noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira