blob: 7d92af60e9a151f2cf5e5805dc405b6496844c76 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>EJB</title>
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
<link rel="shortcut icon" href="/img/jakarta-favicon.ico">
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="EJB";
}
}
catch(err) {
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../jakarta/ejb/DuplicateKeyException.html" title="class in jakarta.ejb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../jakarta/ejb/EJBAccessException.html" title="class in jakarta.ejb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?jakarta/ejb/EJB.html" target="_top">Frames</a></li>
<li><a href="EJB.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">jakarta.ejb</div>
<h2 title="Annotation Type EJB" class="title">Annotation Type EJB</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@Target(value={TYPE,METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface <span class="memberNameLabel">EJB</span></pre>
<div class="block">Indicates a dependency on the local, no-interface, or remote view of an Enterprise Bean.
<p>
Either the <code>beanName</code> or the <code>lookup</code> element can be used to resolve the enterprise bean
dependency to its target session bean component. It is an error to specify values for both <code>beanName</code> and
<code>lookup</code>.
<p>
If no explicit linking information is provided and there is only one session bean within the same application that
exposes the matching client view type, by default the enterprise bean dependency resolves to that session bean.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>EJB 3.0</dd>
<dt><span class="simpleTagLabel">Examples (en):</span></dt>
<dd><a href="../../../../../tomee-9.0/examples/xa-datasource.html">xa-datasource</a>, <a href="../../../../../tomee-9.0/examples/troubleshooting.html">troubleshooting</a>, <a href="../../../../../tomee-9.0/examples/transaction-rollback.html">transaction-rollback</a>, <a href="../../../../../tomee-9.0/examples/testing-transactions.html">testing-transactions</a>, <a href="../../../../../tomee-9.0/examples/testing-transactions-bmt.html">testing-transactions-bmt</a>, <a href="../../../../../tomee-9.0/examples/testing-security.html">testing-security</a>, <a href="../../../../../tomee-9.0/examples/testing-security-meta.html">testing-security-meta</a>, <a href="../../../../../tomee-9.0/examples/testing-security-4.html">testing-security-4</a>, <a href="../../../../../tomee-9.0/examples/testing-security-3.html">testing-security-3</a>, <a href="../../../../../tomee-9.0/examples/testing-security-2.html">testing-security-2</a>, <a href="../../../../../tomee-9.0/examples/testcase-injection.html">testcase-injection</a>, <a href="../../../../../tomee-9.0/examples/simple-cdi-interceptor.html">simple-cdi-interceptor</a>, <a href="../../../../../tomee-9.0/examples/schedule-events.html">schedule-events</a>, <a href="../../../../../tomee-9.0/examples/rest-example.html">rest-example</a>, <a href="../../../../../tomee-9.0/examples/resources-jmx-example.html">resources-jmx-example</a>, <a href="../../../../../tomee-9.0/examples/resources-declared-in-webapp.html">resources-declared-in-webapp</a>, <a href="../../../../../tomee-9.0/examples/reload-persistence-unit-properties.html">reload-persistence-unit-properties</a>, <a href="../../../../../tomee-9.0/examples/movies-complete.html">movies-complete</a>, <a href="../../../../../tomee-9.0/examples/movies-complete-meta.html">movies-complete-meta</a>, <a href="../../../../../tomee-9.0/examples/moviefun.html">moviefun</a>, <a href="../../../../../tomee-9.0/examples/moviefun-rest.html">moviefun-rest</a>, <a href="../../../../../tomee-9.0/examples/lookup-of-ejbs.txt">lookup-of-ejbs</a>, <a href="../../../../../tomee-9.0/examples/jsf-managedBean-and-ejb.html">jsf-managedBean-and-ejb</a>, <a href="../../../../../tomee-9.0/examples/injection-of-ejbs.html">injection-of-ejbs</a>, <a href="../../../../../tomee-9.0/examples/ejb-examples.html">ejb-examples</a>, <a href="../../../../../tomee-9.0/examples/dynamic-proxy-to-access-mbean.html">dynamic-proxy-to-access-mbean</a>, <a href="../../../../../tomee-9.0/examples/decorators.html">decorators</a>, <a href="../../../../../tomee-9.0/examples/datasource-versioning.html">datasource-versioning</a>, <a href="../../../../../tomee-9.0/examples/custom-injection.html">custom-injection</a>, <a href="../../../../../tomee-9.0/examples/connector-war.html">connector-war</a>, <a href="../../../../../tomee-9.0/examples/cdi-request-scope.html">cdi-request-scope</a>, <a href="../../../../../tomee-9.0/examples/cdi-interceptors.html">cdi-interceptors</a>, <a href="../../../../../tomee-9.0/examples/cdi-basic.html">cdi-basic</a>, <a href="../../../../../tomee-9.0/examples/cdi-application-scope.html">cdi-application-scope</a>, <a href="../../../../../tomee-9.0/examples/bean-validation-design-by-contract.html">bean-validation-design-by-contract</a>, <a href="../../../../../tomee-9.0/examples/async-servlet.html">async-servlet</a>, <a href="../../../../../tomee-9.0/examples/async-postconstruct.html">async-postconstruct</a>, <a href="../../../../../tomee-9.0/examples/arquillian-jpa.html">arquillian-jpa</a>, <a href="../../../../../tomee-9.0/examples/application-composer.html">application-composer</a>, <a href="../../../../../tomee-9.0/examples/alternate-descriptors.html">alternate-descriptors</a></dd>
<dt><span class="simpleTagLabel">Examples (es):</span></dt>
<dd><a href="../../../../../tomee-9.0/es/examples/cdi-application-scope.html">cdi-application-scope</a>, <a href="../../../../../tomee-9.0/es/examples/arquillian-jpa.html">arquillian-jpa</a>, <a href="../../../../../tomee-9.0/es/examples/alternate-descriptors.html">alternate-descriptors</a></dd>
<dt><span class="simpleTagLabel">Examples (pt):</span></dt>
<dd><a href="../../../../../tomee-9.0/pt/examples/xa-datasource.html">xa-datasource</a>, <a href="../../../../../tomee-9.0/pt/examples/testing-security.html">testing-security</a>, <a href="../../../../../tomee-9.0/pt/examples/simple-cdi-interceptor.html">simple-cdi-interceptor</a>, <a href="../../../../../tomee-9.0/pt/examples/moviefun-rest.html">moviefun-rest</a>, <a href="../../../../../tomee-9.0/pt/examples/jsf-managedBean-and-ejb.html">jsf-managedBean-and-ejb</a>, <a href="../../../../../tomee-9.0/pt/examples/injection-of-ejbs.html">injection-of-ejbs</a>, <a href="../../../../../tomee-9.0/pt/examples/dynamic-proxy-to-access-mbean.html">dynamic-proxy-to-access-mbean</a>, <a href="../../../../../tomee-9.0/pt/examples/datasource-versioning.html">datasource-versioning</a>, <a href="../../../../../tomee-9.0/pt/examples/cdi-request-scope.html">cdi-request-scope</a>, <a href="../../../../../tomee-9.0/pt/examples/cdi-interceptors.html">cdi-interceptors</a>, <a href="../../../../../tomee-9.0/pt/examples/cdi-basic.html">cdi-basic</a>, <a href="../../../../../tomee-9.0/pt/examples/cdi-application-scope.html">cdi-application-scope</a>, <a href="../../../../../tomee-9.0/pt/examples/bean-validation-design-by-contract.html">bean-validation-design-by-contract</a>, <a href="../../../../../tomee-9.0/pt/examples/async-servlet.html">async-servlet</a>, <a href="../../../../../tomee-9.0/pt/examples/async-postconstruct.html">async-postconstruct</a>, <a href="../../../../../tomee-9.0/pt/examples/arquillian-jpa.html">arquillian-jpa</a>, <a href="../../../../../tomee-9.0/pt/examples/application-composer.html">application-composer</a>, <a href="../../../../../tomee-9.0/pt/examples/alternate-descriptors.html">alternate-descriptors</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.optional.element.summary">
<!-- -->
</a>
<h3>Optional Element Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation">
<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Optional Element and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.Class</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#beanInterface--">beanInterface</a></span></code>
<div class="block">The interface type of the Enterprise Bean to which this reference is mapped.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#beanName--">beanName</a></span></code>
<div class="block">The <code>beanName</code> element references the value of the <code>name</code> element of the <code>Stateful</code>
or <code>Stateless</code> annotation, whether defaulted or explicit.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#description--">description</a></span></code>
<div class="block">A string describing the bean.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#lookup--">lookup</a></span></code>
<div class="block">A portable lookup string containing the JNDI name for the target enterprise bean component.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#mappedName--">mappedName</a></span></code>
<div class="block">The product specific name of the enterprise bean component to which this enterprise bean reference should be mapped.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/ejb/EJB.html#name--">name</a></span></code>
<div class="block">The logical name of the enterprise bean reference within the declaring component's (e.g., java:comp/env) environment.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.element.detail">
<!-- -->
</a>
<h3>Element Detail</h3>
<a name="name--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>name</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;name</pre>
<div class="block">The logical name of the enterprise bean reference within the declaring component's (e.g., java:comp/env) environment.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> object.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="description--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>description</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;description</pre>
<div class="block">A string describing the bean.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> object.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="beanName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beanName</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;beanName</pre>
<div class="block">The <code>beanName</code> element references the value of the <code>name</code> element of the <code>Stateful</code>
or <code>Stateless</code> annotation, whether defaulted or explicit. If the deployment descriptor was used to define
the name of the bean, the <code>beanName</code> element references the <code>ejb-name</code> element of the bean
definition.
<p>
The <code>beanName</code> element allows disambiguation if multiple session beans in the ejb-jar implement the same
interface.
<p>
In order to reference a bean in another ejb-jar file in the same application, the <code>beanName</code> may be
composed of a path name specifying the ejb-jar containing the referenced bean with the bean name of the target bean
appended and separated from the path name by &#35;. The path name is relative to the jar file containing the
component that is referencing the target bean.
<p>
Only applicable if the target enterprise bean is defined within the same application or stand-alone module as the
declaring component.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> object.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="beanInterface--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beanInterface</h4>
<pre>public abstract&nbsp;java.lang.Class&nbsp;beanInterface</pre>
<div class="block">The interface type of the Enterprise Bean to which this reference is mapped.
<p>
Holds one of the following types of the target enterprise bean :
<ul>
<li>Local business interface
<li>Bean class (for no-interface view)
<li>Remote business interface
<li>Local Home interface
<li>Remote Home interface
</ul></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Class</code> object.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>java.lang.Object.class</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="mappedName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mappedName</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;mappedName</pre>
<div class="block">The product specific name of the enterprise bean component to which this enterprise bean reference should be mapped.
This mapped name is often a global JNDI name, but may be a name of any form.
<p>
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.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> object.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="lookup--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>lookup</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;lookup</pre>
<div class="block">A portable lookup string containing the JNDI name for the target enterprise bean component.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> object.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>EJB 3.1</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>""</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../jakarta/ejb/DuplicateKeyException.html" title="class in jakarta.ejb"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../jakarta/ejb/EJBAccessException.html" title="class in jakarta.ejb"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?jakarta/ejb/EJB.html" target="_top">Frames</a></li>
<li><a href="EJB.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>