[jboss-user] [Beginners Corner] - First EBJ: Session Bean, Eclipse, JBOSS AS
joeroyall
do-not-reply at jboss.com
Tue Apr 8 16:52:34 EDT 2008
I am having trouble with a basic session bean. My understanding is that I don't need to initiate a session bean object because the EE framework will do it for me. Am I missing anything in my config?
Eclipse: Version: 3.3.1.1
WST 2.0.2
J2ee Standard Tools 2.0.2
JBOSS AS: 4.2
1. File --> New --> Project... --> EJB --> EJB Project
Target Runtime JBoss v4.2
Default Configuration for JBoss v4.2
Project Facet EBJ Module 3.0 Java 5.0
2. Create package
com.example.helloworld
3. Create interface -> HelloSessionLocal.java
package com.example.helloworld;
import javax.ejb.Local;
@Local
public interface HelloSessionLocal {
public void hello();
}
4. Create class HelloSession.java
package com.example.helloworld;
import javax.ejb.Stateless;
@Stateless
public class HelloSession implements HelloSessionLocal {
public HelloSession(){
}
public void hello(){
System.out.println("hello from ejb stateless bean");
}
}
5. New --> Project... --> Dynamic Web Project
HelloServlet
6. Properties --> J2EE Module Dependencies --> HelloWorld
7. New --> Other --> Web --> Servlet
HelloServlet.java
package com.example.helloservlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.example.helloworld.*;
import javax.ejb.EJB;
public class HelloServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
@EJB
public static HelloSession helloSession;
static final long serialVersionUID = 1L;
public HelloServlet() {
super();
}
public void init() throws ServletException {
System.out.println("hello servlet");
helloSession = new HelloSession();
helloSession.hello();
super.init();
}
}
8. Run as --> Jboss 4.2 Server --> Configured Projects HelloServlet, HelloWorld
9. Console Output
16:13:35,727 INFO [STDOUT] hello servlet
16:13:35,747 ERROR [[/HelloServlet]] StandardWrapper.Throwable
java.lang.NullPointerException
If I instiate HelloSession with helloSession = new HelloSession(); in main
then console output is as expected
116:15:21,516 INFO [STDOUT] hello servlet
16:15:21,522 INFO [STDOUT] hello from ejb stateless bean
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4142510#4142510
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4142510
More information about the jboss-user
mailing list