[jboss-jira] [JBoss JIRA] (WFLY-829) Misplaced @PersistenceContext Causes Untraceable Deployment Failure

Scott Marlow (JIRA) jira-events at lists.jboss.org
Mon Jul 8 09:59:21 EDT 2013


    [ https://issues.jboss.org/browse/WFLY-829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12788174#comment-12788174 ] 

Scott Marlow commented on WFLY-829:
-----------------------------------

Martin, which application server version are you deploying on?  WFLY-1032 is fixed for 8.0.0.Alpha2 (http://www.wildfly.org/download) to show more information as you say (if DEBUG logging is enabled for org.jboss.as.jpa).

The added DEBUG logging statement is in JPAAnnotationProcessor:
{code}
ROOT_LOGGER.debugf("persistence unit search for unitName=%s referenced from class=%s (annotation=%s)", searchName, classDescription.getClassName(), annotation.toString());
{code}
                
> Misplaced @PersistenceContext Causes Untraceable Deployment Failure
> -------------------------------------------------------------------
>
>                 Key: WFLY-829
>                 URL: https://issues.jboss.org/browse/WFLY-829
>             Project: WildFly
>          Issue Type: Bug
>          Components: JPA / Hibernate
>         Environment: Macintosh 10.7.2
>            Reporter: Jim Brownfield
>            Assignee: Scott Marlow
>
> When deploying an ear file that contains an Entity bean with an inappropriate @PersistenceContext annotation, the following stacktrace is generated, and the deployment fails:
> 15:36:16,322 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-9) MSC00001: Failed to start service jboss.deployment.subunit."xxx.xxxxxx.xxxxx.deploy.ear"."xxx.xxxxxx.xxxxx.ejb-0.0.1-SNAPSHOT.jar".PARSE: org.jboss.msc.service.StartException in service jboss.deployment.subunit."xxx.xxxxxx.xxxxx.deploy.ear"."xxx.xxxxxx.xxxxx.ejb-0.0.1-SNAPSHOT.jar".PARSE: Failed to process phase PARSE of subdeployment "xxx.xxxxxx.xxxxx.ejb-0.0.1-SNAPSHOT.jar" of deployment "xxx.xxxxxx.xxxxx.deploy.ear"
> 	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_29]
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_29]
> 	at java.lang.Thread.run(Thread.java:680) [:1.6.0_29]
> Caused by: java.lang.IllegalArgumentException: Class level annotations must provide a name.
> 	at org.jboss.as.jpa.processor.JPAAnnotationParseProcessor.processClass(JPAAnnotationParseProcessor.java:233)
> 	at org.jboss.as.jpa.processor.JPAAnnotationParseProcessor.processPersistenceAnnotations(JPAAnnotationParseProcessor.java:127)
> 	at org.jboss.as.jpa.processor.JPAAnnotationParseProcessor.deploy(JPAAnnotationParseProcessor.java:90)
> 	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final]
> 	... 5 more
> The IllegalArgumentException gives no data for the annotation, the class, or any relevant data to the cause.  I built JBoss debug from source to discover that the culprit in my case was a misplaced PersistenceContext annotation in an entity bean.  The offending annotation had actually existed in a version of our code running in JBoss 4 without error.

--
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


More information about the jboss-jira mailing list