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

Jim Brownfield (JIRA) jira-events at lists.jboss.org
Wed Feb 1 16:05:48 EST 2012


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

Jim Brownfield commented on AS7-3081:
-------------------------------------

@Entity
@PersistenceUnit(name = "persistence/DefaultPersistence", unitName = "DefaultPersistence")
@Table(name = "port_id")
@Resource(name = "jdbc/MyPool", type = javax.sql.DataSource.class, authenticationType = AuthenticationType.CONTAINER, mappedName = "java:/MyPool")
public class PortIdBean implements Serializable, FacilityBased {


What needs to happen is for the exception to be trapped and re-thrown at a higher level so that more information is available. The error didn't even give enough information to determine which file to look at.  I literally had to build jboss in debug just to figure out what was wrong.

Thanks!
                
> Misplaced @PersistenceContext Causes Untraceable Deployment Failure
> -------------------------------------------------------------------
>
>                 Key: AS7-3081
>                 URL: https://issues.jboss.org/browse/AS7-3081
>             Project: Application Server 7
>          Issue Type: Bug
>          Components: JPA / Hibernate
>    Affects Versions: 7.0.2.Final
>         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: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list