Author: dain
Date: Thu Sep 20 13:06:36 2007
New Revision: 577901
URL: http://svn.apache.org/viewvc?rev=577901&view=rev
Log:
Add remote interface to example annotated servlet
Added:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBRemote.java
Modified:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJB.java
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBLocal.java
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedServlet.java
Modified:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJB.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJB.java?rev=577901&r1=577900&r2=577901&view=diff
==============================================================================
---
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJB.java
(original)
+++
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJB.java
Thu Sep 20 13:06:36 2007
@@ -22,7 +22,7 @@
import javax.annotation.Resource;
@Stateless
-public class AnnotatedEJB implements AnnotatedEJBLocal {
+public class AnnotatedEJB implements AnnotatedEJBLocal, AnnotatedEJBRemote {
@Resource
private DataSource ds;
Modified:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBLocal.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBLocal.java?rev=577901&r1=577900&r2=577901&view=diff
==============================================================================
---
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBLocal.java
(original)
+++
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBLocal.java
Thu Sep 20 13:06:36 2007
@@ -18,7 +18,9 @@
package org.apache.openejb.examples.servlet;
import javax.sql.DataSource;
+import javax.ejb.Local;
[EMAIL PROTECTED]
public interface AnnotatedEJBLocal {
String getName();
Added:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBRemote.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBRemote.java?rev=577901&view=auto
==============================================================================
---
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBRemote.java
(added)
+++
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedEJBRemote.java
Thu Sep 20 13:06:36 2007
@@ -0,0 +1,27 @@
+/**
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openejb.examples.servlet;
+
+import javax.ejb.Remote;
+
[EMAIL PROTECTED]
+public interface AnnotatedEJBRemote {
+ String getName();
+
+ void setName(String name);
+}
Modified:
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedServlet.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedServlet.java?rev=577901&r1=577900&r2=577901&view=diff
==============================================================================
---
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedServlet.java
(original)
+++
openejb/trunk/openejb3/examples/servlet-samples/src/main/java/org/apache/openejb/examples/servlet/AnnotatedServlet.java
Thu Sep 20 13:06:36 2007
@@ -25,25 +25,53 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
import java.io.IOException;
public class AnnotatedServlet extends HttpServlet {
@EJB
- private AnnotatedEJBLocal ejb;
+ private AnnotatedEJBLocal localEJB;
+
+ @EJB
+ private AnnotatedEJBRemote remoteEJB;
@Resource
private DataSource ds;
+
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
response.setContentType("text/plain");
ServletOutputStream out = response.getOutputStream();
- out.println("@EJB=" + ejb);
- if (ejb != null) {
- out.println("@EJB.getName()=" + ejb.getName());
- out.println("@EJB.getDs()=" + ejb.getDs());
+ out.println("Local EJB");
+ out.println("@EJB=" + localEJB);
+ if (localEJB != null) {
+ out.println("@EJB.getName()=" + localEJB.getName());
+ out.println("@EJB.getDs()=" + localEJB.getDs());
+ }
+ out.println("JNDI=" + lookupField("localEJB"));
+ out.println();
+
+ out.println("Remote EJB");
+ out.println("@EJB=" + remoteEJB);
+ if (localEJB != null) {
+ out.println("@EJB.getName()=" + remoteEJB.getName());
}
+ out.println("JNDI=" + lookupField("remoteEJB"));
+ out.println();
+
+ out.println("DataSource");
out.println("@Resource=" + ds);
+ out.println("JNDI=" + lookupField("ds"));
+ }
+
+ private Object lookupField(String name) {
+ try {
+ return new InitialContext().lookup("java:comp/env/" +
getClass().getName() + "/" + name);
+ } catch (NamingException e) {
+ return null;
+ }
}
}