ejb学习1-helloword,ejb远程调用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ejb学习1-helloword,ejb远程调用相关的知识,希望对你有一定的参考价值。

  • 环境
  1. win7
  2. myeclipse10
  3. jboss4.0.5
  • 创建第一个ejb项目

1. new EJB project

技术分享

 

2.创建一个 sessionbean 接口

技术分享

 

3.编写ejb接口

package com.mo.ejb;

import javax.ejb.Stateless;

@Stateless
public interface HelloWorld {

    String sayHello(String name);
}

 

4.实现接口

 

package com.mo.ejb;

public class HelloWorldImpl implements HelloWorld {

    public String sayHello(String name) {
        return name+" hello world";
    }

}

 

  • 创建一个 java project 来调用这个 ejb 接口

1.创建 java project HelloworldClient,添加对上面HelloWorld.jar的引用和JBOSS Client的jar包($JBOSS_HOME/clent/jbossall-clent.jar),添到ClassPath路径下。

2.编写 client 调用程序

import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

import com.mo.ejb.HelloWorld;

public class Client {
    public static void main(String[] args) throws NamingException {

        InitialContext initialContext = new InitialContext();
        Properties p = new Properties();
//        p.put(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory");
        p.put(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
        p.put(Context.PROVIDER_URL,"localhost:");
        
        HelloWorld ejb = (HelloWorld) initialContext
                .lookup("HelloWorldImpl/remote");

        String name = ejb.sayHello("大哥");
        System.out.println(name);
    }
}

 未完待续。。。

以上是关于ejb学习1-helloword,ejb远程调用的主要内容,如果未能解决你的问题,请参考以下文章

从远程独立客户端调用 EJB

EJB远程接口调用

远程 EJB 调用的事务

使用对Wildfly 10的远程EJB调用进行身份验证时出现问题

有状态 bean 的远程 EJB 调用第二次失败

Kubernetes 中的远程 EJB