You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by bu...@apache.org on 2011/07/12 20:02:32 UTC
svn commit: r792600 [35/49] - /websites/staging/openejb/trunk/content/
Modified: websites/staging/openejb/trunk/content/service-locator.html
==============================================================================
--- websites/staging/openejb/trunk/content/service-locator.html (original)
+++ websites/staging/openejb/trunk/content/service-locator.html Tue Jul 12 18:02:27 2011
@@ -154,47 +154,47 @@
<DIV id="PageContent">
<p>The functionality of the <a href="jndi-names.html">openejb.jndiname.format</a>
allows for writing some really fun service locator code. Creating the
-exact layout you want using the exact data you want means you can create
+e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">act layout you want using the e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">act data you want means you can create
robust libraries for pulling things out of JNDI.</p>
-<p><a name="ServiceLocator-Lookupexamples"></a></p>
+<p><a name="ServiceLocator-Lookupe<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
-<h1>Lookup examples</h1>
+<h1>Lookup e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples</h1>
-<p>To get the creative juices flowing here are a few examples of lookup
+<p>To get the creative juices flowing here are a few e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples of lookup
methods you could create for your service locator, the jndi name formats
-that would work with those lookups, and examples of client code using the
-service locator. For simplicity, we'll assume all the lookup examples
+that would work with those lookups, and e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples of client code using the
+service locator. For simplicity, we'll assume all the lookup e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples
start with this basic class that has a built-in lookup allowing for a
-common prefix to be optionally applied to the beginning of all lookup
+common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> to be optionally applied to the beginning of all lookup
strings.</p>
<pre><code>public class MyLocator {
- private final Context context;
+ private final Conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t;
- public MyLocator() throws NamingException {
+ public MyLocator() throws NamingE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ception {
this(null);
}
- public MyLocator(String commonPrefix) throws NamingException {
+ public MyLocator(String commonPrefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">) throws NamingE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ception {
Properties properties = new Properties();
- properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.RemoteInitialContextFactory");
- properties.put(Context.PROVIDER_URL, "ejbd://localhost:4201/");
- this.context = new InitialContext(properties);
+ properties.put(Conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.RemoteInitialConte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">tFactory");
+ properties.put(Conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t.PROVIDER_URL, "ejbd:<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">localhost:4201<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">");
+ this.conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t = new InitialConte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t(properties);
}
public Object lookup(String name) {
try {
- if (commonPrefix != null) name = commonPrefix + "/" +name;
- return context.lookup(name);
- } catch (NamingException e) {
- throw new IllegalArgumentException(e);
+ if (commonPrefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> != null) name = commonPrefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> + "<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">" +name;
+ return conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t.lookup(name);
+ } catch (NamingE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ception e) {
+ throw new IllegalArgumentE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ception(e);
}
}
}
</code></pre>
-<p><a name="ServiceLocator-Justtheinterface"></a></p>
+<p><a name="ServiceLocator-Justtheinterface"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Just the interface</h2>
@@ -212,30 +212,30 @@ MyLocator locator = new MyLocator();
Widget widget = locator.lookup(Widget.class);
</code></pre>
-<p>Or with a common prefix or with a common prefix supplied in constructor
+<p>Or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> supplied in constructor
such as:
- - {moduleId}/{interfaceClass}
- - ejb/{moduleId}/{interfaceClass}</p>
+ - {moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}
+ - ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}</p>
-<pre><code>MyLocator locator = new MyLocator("ejb/superbiz");
+<pre><code>MyLocator locator = new MyLocator("ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz");
Widget widget = locator.lookup(Widget.class);
Store store = locator.lookup(Store.class);
</code></pre>
-<p><a name="ServiceLocator-Interfaceclassandaprefix"></a></p>
+<p><a name="ServiceLocator-Interfaceclassandaprefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
-<h2>Interface class and a prefix</h2>
+<h2>Interface class and a prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"></h2>
-<p>Usable with JNDI name formats including a varying prefix such as ejbName or
+<p>Usable with JNDI name formats including a varying prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> such as ejbName or
deploymentID
and ending in the full class name of the interface</p>
<ul>
-<li>{ejbName}/{interfaceClass}</li>
-<li><p>{deploymentId}/{interfaceClass}</p>
+<li>{ejbName}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}</li>
+<li><p>{deploymentId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}</p>
-<p>public <T> T lookup(String prefix, Class<T> type) {
- return (T) lookup(prefix + "/" + type.getName());
+<p>public <T> T lookup(String prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">, Class<T> type) {
+ return (T) lookup(prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> + "<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">" + type.getName());
}</p>
<p>MyLocator locator = new MyLocator();
@@ -243,31 +243,31 @@ Widget redWidget = locator.lookup("RedWi
Widget blueWidget = locator.lookup("BlueWidgetBean", Widget.class); </p></li>
</ul>
-<p>Or with a common prefix or with a common prefix supplied in constructor
+<p>Or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> supplied in constructor
such as:
- - {moduleId}/{ejbName}/{interfaceClass}
- - ejb/{moduleId}/{deploymentId}/{interfaceClass}</p>
+ - {moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbName}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}
+ - ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{deploymentId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}</p>
<pre><code>MyLocator locator = new MyLocator("accountingApp");
Widget widget = locator.lookup("RedWidgetBean", Widget.class);
Store store = locator.lookup("StoreBean", Store.class);
</code></pre>
-<p><a name="ServiceLocator-Interfaceclassandejbclass"></a></p>
+<p><a name="ServiceLocator-Interfaceclassandejbclass"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Interface class and ejb class</h2>
<p>Usable with JNDI name formats comprised of the interfaceClass and ejbClass</p>
-<p>For variation, the interface class is the prefix and the ejb class is the
-suffix. This is neat as the the prefix (the interface class name) becomes
-a jndi context with one binding in it for each implementing ejb class.</p>
+<p>For variation, the interface class is the prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> and the ejb class is the
+suffi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">. This is neat as the the prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> (the interface class name) becomes
+a jndi conte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t with one binding in it for each implementing ejb class.</p>
<p>Works with:
- - {interfaceClass}/{ejbClass}</p>
+ - {interfaceClass}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbClass}</p>
<pre><code>public <T> T lookup(Class<T> type, Class ejbClass) {
- return (T) lookup(type.getName() + "/" + ejbClass.getName());
+ return (T) lookup(type.getName() + "<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">" + ejbClass.getName());
}
@@ -276,24 +276,24 @@ MyLocator locator = new MyLocator();
Widget widget = locator.lookup(Widget.class, BlueWidgetBean.class);
</code></pre>
-<p>Or with a common prefix or with a common prefix supplied in constructor
+<p>Or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> supplied in constructor
such as:
- - {moduleId}/{interfaceClass}/{ejbClass}
- - ejb/{moduleId}/{interfaceClass}/{ejbClass}</p>
+ - {moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbClass}
+ - ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbClass}</p>
-<pre><code>MyLocator locator = new MyLocator("ejb/purchasingApp");
+<pre><code>MyLocator locator = new MyLocator("ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">purchasingApp");
Widget widget = locator.lookup(Widget.class, RedWidgetBean.class);
Store store = locator.lookup(Store.class, StoreBean.class);
</code></pre>
-<p><a name="ServiceLocator-Interfaceclassandejbclasswithsimplenames"></a></p>
+<p><a name="ServiceLocator-Interfaceclassandejbclasswithsimplenames"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Interface class and ejb class with simple names</h2>
-<p>Similar to the above example but using the simple name of the classes
+<p>Similar to the above e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample but using the simple name of the classes
resulting
in a JNDI tree that's a bit more human readable.
- - {ejbClass.simpleName}/{interfaceClass.simpleName}</p>
+ - {ejbClass.simpleName}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass.simpleName}</p>
<pre><code>public <T> T lookup(Class ejbClass, Class<T> type) {
return (T) lookup(ejbClass.getSimpleName() + "" + type.getSimpleName());
@@ -306,10 +306,10 @@ in a JNDI tree that's a bit more human r
Widget widget = locator.lookup(RedWidgetBean.class, Widget.class);
</code></pre>
-<p>Or with a common prefix or with a common prefix supplied in constructor
+<p>Or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> or with a common prefi<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> supplied in constructor
such as:
- - {moduleId}/{ejbClass.simpleName}/{interfaceClass.simpleName}
- - ejb/{moduleId}/{ejbClass.simpleName}/{interfaceClass.simpleName}</p>
+ - {moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbClass.simpleName}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass.simpleName}
+ - ejb<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{moduleId}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{ejbClass.simpleName}<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">{interfaceClass.simpleName}</p>
<pre><code>MyLocator locator = new MyLocator("shippingApp");
Widget widget = locator.lookup(GreenWidgetBean.class, Widget.class);
Modified: websites/staging/openejb/trunk/content/simple-stateful-example.html
==============================================================================
--- websites/staging/openejb/trunk/content/simple-stateful-example.html (original)
+++ websites/staging/openejb/trunk/content/simple-stateful-example.html Tue Jul 12 18:02:27 2011
@@ -152,26 +152,26 @@
<P>
<!-- $BODY -->
<DIV id="PageContent">
- <p><a name="SimpleStatefulExample-Overview"></a></p>
+ <p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Overview"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h1>Overview</h1>
-<p>{span:style=float: right; margin-left: 20px;}
+<p>{span:style=float: right; margin-left: 20p<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">;}
{html}</p>
<p><object width="400" height="250"><param name="movie"
-value="http://www.youtube.com/v/9JqxbfzsWOQ?fs=1&hl=en_US&rel=0"></param><param
-name="allowFullScreen" value="true"></param><param name="allowscriptaccess"
-value="always"></param><embed
-src="http://www.youtube.com/v/9JqxbfzsWOQ?fs=1&hl=en_US&rel=0"
-type="application/x-shockwave-flash" allowscriptaccess="always"
-allowfullscreen="true" width="400" height="250"></embed></object></p>
+value="http:<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">www.youtube.com<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">v<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">9Jq<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">bfzsWOQ?fs=1&hl=en_US&rel=0"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle"
alt="" border="0">param><param
+name="allowFullScreen" value="true"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">param><param name="allowscriptaccess"
+value="always"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">param><embed
+src="http:<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">www.youtube.com<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">v<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">9Jq<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">bfzsWOQ?fs=1&hl=en_US&rel=0"
+type="application<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">-shockwave-flash" allowscriptaccess="always"
+allowfullscreen="true" width="400" height="250"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">embed><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">object></p>
<p>{html}
{span}
{div}</p>
-<p>This example shows how to create a Stateful session EJB using annotations.</p>
+<p>This e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample shows how to create a Stateful session EJB using annotations.</p>
<p>A Stateful session bean is a session bean whose instances can maintain the
conversational state with the client. The conversational state of the
@@ -193,130 +193,130 @@ annotated with the @Remote or @Local ann
implementation, a plain-old-java-object which implements the remote or the
local business interface and is annotated with the @Stateful annotation</p>
-<p><em>This example is the "simple-stateful" example located in the <a href="openejb:download.html">openejb-examples.zip</a>
+<p><em>This e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample is the "simple-stateful" e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample located in the <a href="openejb:download.html">openejb-e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples.zip</a>
available on the download page.</em></p>
<p>{div}
{div:style=clear:both;}{div}</p>
-<p><a name="SimpleStatefulExample-TheCode"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-TheCode"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h1>The Code</h1>
-<p>In this example we develop a simple counter stateful session EJB. Every
+<p>In this e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample we develop a simple counter stateful session EJB. Every
stateful session bean implementation must be annotated using the annotation
-<em>@Stateful</em> or marked that way in the ejb-jar.xml file.</p>
+<em>@Stateful</em> or marked that way in the ejb-jar.<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ml file.</p>
-<p><a name="SimpleStatefulExample-Bean"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Bean"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Bean</h2>
-<p>{snippet:id=code|url=openejb3/examples/simple-stateful/src/main/java/org/superbiz/counter/CounterImpl.java|lang=java}</p>
+<p>{snippet:id=code|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">main<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" bor
der="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterImpl.java|lang=java}</p>
-<p>In EJB 3.0 session beans do not need to implement the javax.ejb.SessionBean
+<p>In EJB 3.0 session beans do not need to implement the java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.SessionBean
interface. You can simply annotate it as @Stateful if you want it to be a
stateful session bean. </p>
-<p>Users of EJB 2.x may notice the bean actually implements the business
+<p>Users of EJB 2.<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> may notice the bean actually implements the business
interfaces! In the prior version of EJB implementing the remote interface
-(which derives from javax.ejb.EJBObject) in your bean was just not allowed.
-Now there is no javax.ejb.EJBObject requirement, so implementing the
+(which derives from java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBObject) in your bean was just not allowed.
+Now there is no java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBObject requirement, so implementing the
business interfaces is standard practice for EJB 3.0.</p>
-<p><a name="SimpleStatefulExample-Localbusinessinterface"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Localbusinessinterface"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Local business interface</h2>
-<p>{snippet:id=code|url=openejb3/examples/simple-stateful/src/main/java/org/superbiz/counter/CounterLocal.java|lang=java}</p>
+<p>{snippet:id=code|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">main<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" bor
der="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterLocal.java|lang=java}</p>
<p>Local interfaces in EJB are <em>pass-by-reference</em> interfaces. Meaning that
<em>normal java semantics</em> are used for passing arguments, return values and
-exceptions. A business local interface can be any plain java interface.
+e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ceptions. A business local interface can be any plain java interface.
There are no restrictions on the method arguments, return types, or throws
clauses. </p>
<p>Unless specified otherwise, every interface your bean implements (and it's
parent class implements and so on) is considered to be a local business
-interface. You can use the <em>@Local</em> annotation to explicitly state that an
+interface. You can use the <em>@Local</em> annotation to e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">plicitly state that an
interface is a local interface, but this is not required.</p>
<p>You'll notice that in EJB 3.0 the Local Business Interface of a stateless
-session bean does not need to extend from javax.ejb.EJBLocalObject and does
-not need a javax.ejb.EJBLocalHome interface as they did in EJB 2.x and
+session bean does not need to e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">tend from java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBLocalObject and does
+not need a java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBLocalHome interface as they did in EJB 2.<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0"> and
prior. Per the vocabulary of the EJB spec, interfaces that implement
-javax.ejb.EJBLocalObject or javax.ejb.EJBLocalHome are considered Component
+java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBLocalObject or java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBLocalHome are considered Component
Interfaces and the plain java interface above is considered a Business
Interface.</p>
-<p><a name="SimpleStatefulExample-Remotebusinessinterface"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Remotebusinessinterface"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h2>Remote business interface</h2>
-<p>{snippet:id=code|url=openejb3/examples/simple-stateful/src/main/java/org/superbiz/counter/CounterRemote.java|lang=java}</p>
+<p>{snippet:id=code|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">main<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" bor
der="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterRemote.java|lang=java}</p>
<p>Remote interfaces are <em>pass-by-value</em> interfaces. Meaning that all method
-parameters, return values, and exceptions are <em>serialized</em> on every call.
+parameters, return values, and e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ceptions are <em>serialized</em> on every call.
The result is that you get a copy of the original object and not the
original object. The advantage is of course that Remote interfaces can be
used to invoke an EJB across a network in a client-server fashion. There
are no restrictions on the Remote interface itself, but there are on the
data passed in and out of the remote interface. The <em>values</em> passed into a
method or returned from a method of a Remote interface <em>must be
-serializable</em>. It is fine for the method signature to be, for example,
+serializable</em>. It is fine for the method signature to be, for e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample,
"public Object myMethod(Object myParam)" as long as the <em>value</em> passed in
and returned implements <em>java.io.Serializable</em>.</p>
<p>As stated above, the Remote Business Interface of a bean can be any plain
-old interface. It does not need to extend javax.ejb.EJBObject, it does not
-need a javax.ejb.EJBHome, the methods do not need to throw
-javax.rmi.RemoteException, and the bean class <em>can</em> implement it!</p>
+old interface. It does not need to e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">tend java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBObject, it does not
+need a java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.ejb.EJBHome, the methods do not need to throw
+java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">.rmi.RemoteE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ception, and the bean class <em>can</em> implement it!</p>
<p>At minimum the interface must be annotated with <em>@Remote</em> either in the
interface itself or in the bean class, or the interface must be declared
-via <business-remote> in the ejb-jar.xml.</p>
+via <business-remote> in the ejb-jar.<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ml.</p>
-<p><a name="SimpleStatefulExample-Writingaunittestfortheexample"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Writingaunittestforthee<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
-<h1>Writing a unit test for the example</h1>
+<h1>Writing a unit test for the e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample</h1>
<p>Writing an unit test for the stateful session EJB is quite simple. We need
-just to write a setup method to create and initialize the InitialContext,
+just to write a setup method to create and initialize the InitialConte<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">t,
and then write our test methods</p>
-<p><a name="SimpleStatefulExample-setUp"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-setUp"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h4>setUp</h4>
-<p>{snippet:id=setup|url=openejb3/examples/simple-stateful/src/test/java/org/superbiz/counter/CounterImplTest.java|lang=java}</p>
+<p>{snippet:id=setup|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">test<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" bo
rder="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterImplTest.java|lang=java}</p>
-<p><a name="SimpleStatefulExample-Testthelocalbusinessinterface"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Testthelocalbusinessinterface"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h4>Test the local business interface</h4>
-<p>{snippet:id=local|url=openejb3/examples/simple-stateful/src/test/java/org/superbiz/counter/CounterImplTest.java|lang=java}</p>
+<p>{snippet:id=local|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">test<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" bo
rder="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterImplTest.java|lang=java}</p>
-<p><a name="SimpleStatefulExample-Testtheremotebusinessinterface"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Testtheremotebusinessinterface"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h4>Test the remote business interface</h4>
-<p>{snippet:id=remote|url=openejb3/examples/simple-stateful/src/test/java/org/superbiz/counter/CounterImplTest.java|lang=java}</p>
+<p>{snippet:id=remote|url=openejb3<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">src<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">test<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" b
order="0">java<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">superbiz<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">counter<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">CounterImplTest.java|lang=java}</p>
<p>{info:title=JNDI Names}
Note that JNDI names for Java SE clients are not standardized by the EJB
spec. This is unfortunate and something being addressed in EJB 3.1. The
default schema that OpenEJB uses is ejbName + interfaceType (i.e. Local,
-Remote, LocalHome, RemoteHome), so in our example "CounterImpl" + "Local"
+Remote, LocalHome, RemoteHome), so in our e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample "CounterImpl" + "Local"
and "CounterImpl" + "Remote". You can in fact change this default to be
absolutely <a href="jndi-names.html">anything you want</a>
including interface class name, ejb class name, and more.
{info}</p>
-<p><a name="SimpleStatefulExample-Running"></a></p>
+<p><a name="SimpleStatefulE<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample-Running"><<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">a></p>
<h1>Running</h1>
-<p>Running the example is fairly simple. In the "simple-stateful" directory
-of the <a href="openejb:download.html">examples zip</a>
+<p>Running the e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">ample is fairly simple. In the "simple-stateful" directory
+of the <a href="openejb:download.html">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples zip</a>
, just run:</p>
<p>$ mvn clean install</p>
@@ -328,37 +328,37 @@ of the <a href="openejb:download.html">e
-------------------------------------------------------
Running org.superbiz.counter.CounterImplTest
Apache OpenEJB 3.0 build: 20080408-04:13
-http://openejb.apache.org/
+http:<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb.apache.org<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">
INFO - openejb.home =
</code></pre>
-<p>/Users/dblevins/work/openejb-3.0/examples/simple-stateful
+<p><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emo
ticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful
INFO - openejb.base =
-/Users/dblevins/work/openejb-3.0/examples/simple-stateful
+<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emotic
on" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful
INFO - Configuring Service(id=Default Security Service,
type=SecurityService, provider-id=Default Security Service)
INFO - Configuring Service(id=Default Transaction Manager,
type=TransactionManager, provider-id=Default Transaction Manager)
- INFO - Configuring Service(id=Default JDK 1.3 ProxyFactory,
-type=ProxyFactory, provider-id=Default JDK 1.3 ProxyFactory)
+ INFO - Configuring Service(id=Default JDK 1.3 Pro<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">yFactory,
+type=Pro<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">yFactory, provider-id=Default JDK 1.3 Pro<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">yFactory)
INFO - Found EjbModule in classpath:
-/Users/dblevins/work/openejb-3.0/examples/simple-stateful/target/classes
+<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emotic
on" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">target<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">classes
INFO - Configuring app:
-/Users/dblevins/work/openejb-3.0/examples/simple-stateful/target/classes
+<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emotic
on" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">target<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">classes
INFO - Configuring Service(id=Default Stateful Container, type=Container,
provider-id=Default Stateful Container)
INFO - Auto-creating a container for bean CounterImpl:
Container(type=STATEFUL, id=Default Stateful Container)
INFO - Loaded Module:
-/Users/dblevins/work/openejb-3.0/examples/simple-stateful/target/classes
+<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emotic
on" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">target<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">classes
INFO - Assembling app:
-/Users/dblevins/work/openejb-3.0/examples/simple-stateful/target/classes
+<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<IMG class="emotic
on" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">target<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">classes
INFO - Jndi(name=CounterImplLocal) --> Ejb(deployment-id=CounterImpl)
INFO - Jndi(name=CounterImplRemote) --> Ejb(deployment-id=CounterImpl)
INFO - Created Ejb(deployment-id=CounterImpl, ejb-name=CounterImpl,
container=Default Stateful Container)
INFO - Deployed
-Application(path=/Users/dblevins/work/openejb-3.0/examples/simple-stateful/target/classes)
+Application(path=<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">Users<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">dblevins<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">work<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">openejb-3.0<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">e<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/error.gif" height="16" width="16" align="absmiddle" alt="" border="0">amples<
IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">simple-stateful<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">target<IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0">classes)
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.698 sec</p>
<pre><code>Results :