Top Description Inners Methods
jakarta.annotation

public @Interface Resource

extends Annotation
Annotations
@Target:TYPE, FIELD, METHOD
@Retention:RUNTIME
@Repeatable:Resources
Imports
java.lang.annotation.*

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
1.6, Common Annotations 1.0

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static enum
Resource.AuthenticationType

The two possible authentication types for a resource.

Method Summary

Modifier and TypeMethod and Description
public Resource.AuthenticationType
authenticationType()

The authentication type to use for this resource.

public String
description()

Description of this resource.

public String
lookup()

The name of the resource that the reference points to.

public String
mappedName()

A product-specific name that this resource should be mapped to.

public String
name()

The JNDI name of the resource.

public boolean
shareable()

Indicates whether this resource can be shared between this component and other components.

public Class<?>
type()

The Java type of the resource.

Inherited from java.lang.annotation.Annotation:
annotationTypeequalshashCodetoString

Method Detail

authenticationTypeback to summary
public 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.

descriptionback to summary
public 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.

lookupback to summary
public 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
1.7, Common Annotations 1.1
mappedNameback to summary
public String mappedName()

A product-specific name that this resource should be mapped to. The mappedName element provides for mapping the resource reference to the name of a resource known to the applicaiton server. The mapped name could be 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.

nameback to summary
public 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.

shareableback to summary
public 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.

typeback to summary
public 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.

jakarta.annotation back to summary

public final Enum Resource.AuthenticationType

extends Enum<Resource.AuthenticationType>
Class Inheritance

The two possible authentication types for a resource.

Field Summary

Modifier and TypeField and Description
public static final Resource.AuthenticationType
public static final Resource.AuthenticationType

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static Resource.AuthenticationType
public static Resource.AuthenticationType[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

APPLICATIONback to summary
public static final Resource.AuthenticationType APPLICATION
CONTAINERback to summary
public static final Resource.AuthenticationType CONTAINER

Constructor Detail

AuthenticationTypeback to summary
private AuthenticationType()

Method Detail

valueOfback to summary
public static Resource.AuthenticationType valueOf(String name)
valuesback to summary
public static Resource.AuthenticationType[] values()