-
@Target(value={TYPE,FIELD,METHOD}) @Retention(value=RUNTIME) public @interface Resource
The Resource annotation marks a resource that is needed by the application. This annotation may be applied to an application component class, or to fields or methods of the component class. When the annotation is applied to a field or method, the container will inject an instance of the requested resource into the application component when the component is initialized. If the annotation is applied to the component class, the annotation declares a resource that the application will look up at runtime.Even though this annotation is not marked Inherited, deployment tools are required to examine all superclasses of any component class to discover all uses of this annotation in all superclasses. All such annotation instances specify resources that are needed by the application component. Note that this annotation may appear on private fields and methods of superclasses; the container is required to perform injection in these cases as well.
- Since:
- Common Annotations 1.0
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element and Description Resource.AuthenticationType
authenticationType
The authentication type to use for this resource.String
description
Description of this resource.String
lookup
The name of the resource that the reference points to.String
mappedName
A product specific name that this resource should be mapped to.String
name
The JNDI name of the resource.boolean
shareable
Indicates whether this resource can be shared between this component and other components.Class
type
The Java type of the resource.
-
-
-
Element Detail
-
name
public abstract String name
The JNDI name of the resource. For field annotations, the default is the field name. For method annotations, the default is the JavaBeans property name corresponding to the method. For class annotations, there is no default and this must be specified.- Default:
- ""
-
lookup
public abstract String lookup
The name of the resource that the reference points to. It can link to any compatible resource using the global JNDI names.- Since:
- Common Annotations 1.1
- Default:
- ""
-
type
public abstract Class type
The Java type of the resource. For field annotations, the default is the type of the field. For method annotations, the default is the type of the JavaBeans property. For class annotations, there is no default and this must be specified.- Default:
- java.lang.Object.class
-
authenticationType
public abstract Resource.AuthenticationType authenticationType
The authentication type to use for this resource. This may be specified for resources representing a connection factory of any supported type, and must not be specified for resources of other types.- Default:
- javax.annotation.Resource.AuthenticationType.CONTAINER
-
shareable
public abstract boolean shareable
Indicates whether this resource can be shared between this component and other components. This may be specified for resources representing a connection factory of any supported type, and must not be specified for resources of other types.- Default:
- true
-
mappedName
public abstract String mappedName
A product specific name that this resource should be mapped to. The name of this resource, as defined by thename
element or defaulted, is a name that is local to the application component using the resource. (It's a name in the JNDIjava:comp/env
namespace.) Many application servers provide a way to map these local names to names of resources known to the application server. This mapped name is often a global JNDI name, but may be a name of any form.Application servers are not required to support any particular form or type of mapped name, nor the ability to use mapped names. The mapped name is product-dependent and often installation-dependent. No use of a mapped name is portable.
- Default:
- ""
-
description
public abstract String description
Description of this resource. The description is expected to be in the default language of the system on which the application is deployed. The description can be presented to the Deployer to help in choosing the correct resource.- Default:
- ""
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/annotation/resource.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.