Package javax.ejb

Annotation Interface Local


@Target(TYPE) @Retention(RUNTIME) public @interface Local
Declares the local business interface(s) for a session bean.

The Local annotation is applied to the session bean class or local business interface to designate a local interface of the bean.

When used on the bean class, declares the local business interface(s) for a session bean. When used on an interface, designates that interface as a local business interface. In this case, no value element should be provided.

The Local annotation applies only to session beans and their interfaces.

Use of the Local annotation is required when the bean class exposes one or more local business interface and any of the following is true:

  • the bean class does not implement its business interfaces
  • the bean exposes a no-interface view
  • the bean class implements more than one interface and at least one of the interfaces is explicitly designated as a business interface by using the Local or Remote annotation on the interface, or in the deployment descriptor

The following interfaces are excluded when determining whether the bean class has business interfaces: java.io.Serializable; java.io.Externalizable; any of the interfaces defined in javax.ejb.

Since:
EJB 3.0
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Specifies the local business interface(s) of the bean.
  • Element Details

    • value

      Class[] value
      Specifies the local business interface(s) of the bean. The value element is specified only when the annotation is applied to the bean class. It is only required to be specified if any of the following is true:
      • the bean class does not implement its local business interface
      • at least one of the implemented interfaces is designated as a remote interface
      • the bean class implements two or more interfaces and at least one of the implemented interfaces is designated as local business interfaces using Local annotation on the interface, and at least one other interface (excluding java.io.Serializable, java.io.Externalizable, and any of the interfaces defined by the javax.ejb package) has no designation.
      Default:
      {}