cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "gonzalad (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CXF-7586) cxf-rt-rs-security-oauth2 preventing application on JBoss from starting if more than 1 PU defined
Date Tue, 12 Dec 2017 16:04:00 GMT

    [ https://issues.apache.org/jira/browse/CXF-7586?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16287796#comment-16287796
] 

gonzalad edited comment on CXF-7586 at 12/12/17 4:03 PM:
---------------------------------------------------------

the problem is that JBoss 7.x scans non managed class.
imo JBoss shouldn't scan non managed classes

See https://jira.spring.io/browse/DATAJPA-213 and https://issues.jboss.org/browse/WFLY-1032
which explains the issue.

The issue is fixed in Wildfly https://issues.jboss.org/browse/AS7-4710.
aka just declare <property name="wildfly.jpa.default-unit" value="true"/>

To current CXF version working with JBoss AS 7.1.2 we need to either : 
a - add a unitName in @PersistenceContext
b - we remove the @PersistenceContext annotation from JPACMTCodeDataProvider.
     This would mean that any project using JPACMTCodeDataProvider will need to sublass it
to add the @PersistenceContext or inject manually the entityManager

wdyt ?


was (Author: gonzalad):
the problem is that JBoss 7.x scans non managed class.
imo JBoss shouldn't scan non managed classes

See https://jira.spring.io/browse/DATAJPA-213 and https://issues.jboss.org/browse/WFLY-1032
which explains the issue.

The issue is fixed in Wildflyw https://issues.jboss.org/browse/AS7-4710.
aka just declare <property name="wildfly.jpa.default-unit" value="true"/>

To current CXF version working with JBoss AS 7.1.2 we need to either : 
a - add a unitName in @PersistenceContext
b - we remove the @PersistenceContext annotation from JPACMTCodeDataProvider.
     This would mean that any project using JPACMTCodeDataProvider will need to sublass it
to add the @PersistenceContext or inject manually the entityManager

wdyt ?

> cxf-rt-rs-security-oauth2 preventing application on JBoss from starting if more than
1 PU defined
> -------------------------------------------------------------------------------------------------
>
>                 Key: CXF-7586
>                 URL: https://issues.apache.org/jira/browse/CXF-7586
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS Security
>    Affects Versions: 3.2.0, 3.2.1
>            Reporter: Olivier Paquet
>         Attachments: cxf-jpa-example.zip
>
>
> Hi, 
> We noticed after switchting from cxf 3.1.7 to 3.2.x that our application is not starting
anymore.
> After some analysis we found out that the cxf module cxf-rt-rs-security-oauth2 contains
a class org.apache.cxf.rs.security.oauth2.grants.code.JPACMTCodeDataProvider which injects
an EntityManager using @PersistenceContext without defining a unitName. On our JBoss 6.4 EAP
(JBoss 7.x) we get the following error message: 
> {code}
> java.lang.IllegalArgumentException: JBAS011470: Persistence unitName was not specified
and there are x persistence unit definitions in application deployment deployment
> {code}
> With only one persistence unit definition it's working, but we need multiple PU's.
> One solution I have in mind is to define a unitName for the PersistenceContext on the
org.apache.cxf.rs.security.oauth2.grants.code.JPACMTCodeDataProvider ("CXF_PU") , so that
a PU has to be define explicitly in the persistence.xml, I mean it's not nice but for us it
would be ok. 
> Or perhaps there are other macanisms to avoid the persistence context injection if this
class is not used? 
> It currently prevents us from switchting to the newest cxf version.
> I attached a sample maven project to reproduce this issue on a JBoss 7.x .
> Greetings, Olivier



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message