Uploaded image for project: 'EJB 3.0'
  1. EJB 3.0
  2. EJBTHREE-950

Incorrect signatures for EJB3 APIs

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • AS 4.2.0 GA, AS 5.0.0.Beta3
    • AS 4.2.0 GA
    • None
    • None

      The following differences were detected in the JBoss EJB3 API signatures in Branch_4_2 and trunk (5.0.0) according to the EJB3 API Javadoc located at: http://java.sun.com/javaee/5/docs/api/

      javax.ejb.ActivationConfigProperty:
      No Target or Retention Policy defined
      Defined as: class abstract public interface !annotation javax.ejb.ActivationConfigProperty

      Should be defined:
      javax.ejb.ActivationConfigProperty: class abstract public interface !annotation javax.ejb.ActivationConfigProperty
      anno 0 java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy value=RUNTIME)
      anno 0 java.lang.annotation.Target(java.lang.annotation.ElementType[] value=[])

      ----------------------

      javax.ejb.EJB:
      Target value includes PARAMETER
      anno 0 java.lang.annotation.Target(java.lang.annotation.ElementType[] value=[METHOD, TYPE, FIELD, PARAMETER])

      should only be:
      anno 0 java.lang.annotation.Target(java.lang.annotation.ElementType[] value=[TYPE, METHOD, FIELD])

      ----------------------
      javax.ejb.Init:

      Defined as:
      method abstract public !hasdefault java.lang.String[] value()

      Should be:
      method abstract public !hasdefault java.lang.String value()

      --------------------------
      javax.ejb.AccessMode
      This is obsolete and should be removed.

      ------------------------------------------
      javax.ejb.SessionContext:

      Defined as:

      public Object getBusinessObject(Class businessInterface) throws IllegalStateException;

      Should be defined:

      <T> T getBusinessObject(Class<T> businessInterface) throws IllegalStateException;

      ------------------------------------------
      javax.ejb.EJBAccessException:

      Constructors for EJBAccessException should be:

      public EJBAccessException()
      public EJBAccessException(String message)

      JBoss implementation has an additional constructor:
      public javax.ejb.EJBAccessException(String message, Exception ex)

      ------------------------------------------
      javax.ejb.EJBTransactionRolledbackException:

      Constructors for EJBTransactionRolledbackException should be:

      public EJBTransactionRolledbackException()
      public EJBTransactionRolledbackException(String message)
      public EJBTransactionRolledbackException(String message, Exception ex)

      The JBoss implementation has an additional constructor:
      public EJBTransactionRolledbackException(Exception ex)

      ----------------------------------------------------

            rhn-engineering-cdewolf Carlo de Wolf
            smcgowan@redhat.com Shelly McGowan (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: