Oleg  Ignatov
Oleg Ignatov

Reputation: 865

Can't find my bean in JBoss esb server

I have jbossesb-server-4.11 and eclipse-jee-juno. I want to create some simple EJB application, deploy it on server and call some method from client. Everything seems to be clear. I have found a simple Hello world application here: https://sites.google.com/a/thedevinfo.com/thedevinfo/Home/jboss/jboss-application-server/ejb3-session-bean-tutorial-using-jboss-and-eclipse. I did all the same, I also tried to download this example from this site but it does not work for me. I created JBoss server in Eclipse, then I run my ejb application on this server, then I tryied to get my bean this way:

InitialContext ctx = new InitialContext(props);         
MyBeanRemote bean = (MyBeanRemote) ctx.lookup("MyBean/remote");

But i have the following error: "javax.naming.NameNotFoundException: MyBean not bound". Here is my simple code in ejb project:

@Remote
public interface MyBeanRemote extends IMyBean{}
@Local
public interface MyBeanLocal extends IMyBean {}
@Stateless  
public class MyBean implements MyBeanLocal, MyBeanRemote {
    public void doSomething() {
        System.out.println("Hello World!");         
    }
}

Please advice me where I am wrong?

Upvotes: 1

Views: 412

Answers (1)

Paweł Wyrwiński
Paweł Wyrwiński

Reputation: 1443

It looks like standalone jbossesb-server is very narrowly specialized product. It provides ESB-specific functionality but lacks EJB support. Your test app deploys and runs fine on vanilla JBossAS 4.2.3.GA though (AS 4.2.3 is the foundation for jbossesb-server-4.11 I think).

If ESB is a must for you, I recommend installing JBoss ESB as an extension for plain JBoss 4.2.3.GA or maybe newer 5.x, 6.x series (AFAIK 7.x is not supported yet). In order to do so you need to download jboss-4.2.3.GA and jbossesb-4.11.zip instead of jbossesb-server-4.11.zip. Then you need to follow this instructions. Pay attention there are two editions of JBossAS 4.2.3:

  • jboss-4.2.3.GA.zip - for JDK5
  • jboss-4.2.3.GA-jdk6.zip - for JDK6+

the same is true for 5.x series (6.x and 7.x require JDK6+).

The other option is using full commercial SOA solution: RedHat's SOA Platform. It's not cheap though.

Upvotes: 1

Related Questions