[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-3726) Methods with an "InvocationContext" parameter annotated with "javax.ejb.PostActivate" cause a validation exception in WebSphere v7.0

Denis Forveille (JIRA) jira-events at lists.jboss.org
Thu Apr 2 18:34:22 EDT 2009


    [ https://jira.jboss.org/jira/browse/JBSEAM-3726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12460382#action_12460382 ] 

Denis Forveille commented on JBSEAM-3726:
-----------------------------------------

In the name of WebSphere user, Thanks Julien!! lol

Norman. I understand your point, but you must take into account that:
1) seam had already other *duplicate* annotations (Gary's comments say that is to mimic EJB3 behaviour when seam is run in POJO mode). So those are not the first to be *duplicated*. Maybe yous should try the to remove  the other "duplicate annotations" too

2) the methods in questions does not conform  to the "official" signature as stated in the EJB3 spec (usage of  seam InvocationContext as parameter instead of EJB3 InvocationContext..). 

So counting on the fact that *any* application server will silently ignore those *strange* methods becose it *should* ignore the class as a whole as it's not an ejb3 interceptor is weak IMHO, even if JBoss does that
It is much stronger to provide ejb3 method signature that conform to the ejb3 specs and that not depending on the way the application server will scan/look for ejb3 annotations

> Methods with an "InvocationContext" parameter annotated with "javax.ejb.PostActivate" cause a validation exception in WebSphere v7.0
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JBSEAM-3726
>                 URL: https://jira.jboss.org/jira/browse/JBSEAM-3726
>             Project: Seam
>          Issue Type: Bug
>          Components: Platform interoperability
>    Affects Versions: 2.1.1.CR2
>         Environment: WebSphere v7.0
>            Reporter: Denis Forveille
>            Assignee: Dan Allen
>            Priority: Critical
>             Fix For: 2.1.2.CR1
>
>         Attachments: jbseam-3726.patch, traceback.txt
>
>
> When starting our app in WebSphere v7.0 with seam v2.1.0.SP1, we receive the exception below
> Is it possible that annotation "javax.ejb.PostActivate" is used instead of "org.jboss.seam.annotations.intercept.PostActivate" annotation and that the former does not accept any parameter for the annotated method (At least in WebSphere v7.0) and the latter does...
> The method in question is declared as 
>    @PostActivate
>    public void postActivate(InvocationContext invocation) throws Exception
> This method signature is present in classes SessionBeanInterceptor, EntityManagerProxyInterceptor and HibernateSessionProxyInterceptor
> Exception: 
> [18/11/08 16:17:51:537 EST] 0000001a annotations   E AnnotativeMetadataManagerImpl merge Caught exception while merging 
>                                  com.ibm.wsspi.amm.validate.ValidationException: For method, org.jboss.seam.persistence.EntityManagerProxyInterceptor.postActivate(Lorg/jboss/seam/intercept/InvocationContext;)V\[com.ibm.ws.amm.scan.util.info.impl.MethodInfoImpl at 1b8e1b8e\], parameters were specified, but null was the expected comparison

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list