ejb+jboss8的简单例子

0 篇文章 0 订阅

首先在eclipse新建一个ejb project

建好后,在ejbModule下建立接口文件Hello.java其内容为

package com.fhit.ejb;

public interface Hello {
	public String say(String name);
}

接着建立HelloBean.java其内容为

package com.fhit.ejb;

import javax.ejb.Remote;
import javax.ejb.Stateless;

@Stateless
@Remote(Hello.class)
public class HelloBean implements Hello{

	@Override
	public String say(String name) {
		// TODO Auto-generated method stub
		return name+"你好啊";
	}
	
}

其中文件目录结构为

可以直接在eclipse中把项目添加进jboss运行

把项目导出为jar文件

2,建立客户端,新建java工程配置环境把上一步导出的jar及jboss安装目录下如

D:\jboss\wildfly-8.1.0.Final\bin\client的jboss-client.jar导入工程

新建class编写客户端Tclient.java

package src;

import java.util.Properties;

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

import com.fhit.ejb.Hello;

public class Tclient {

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

        Properties props=new Properties();  
        props.setProperty(Context.URL_PKG_PREFIXES,"org.jboss.ejb.client.naming");  
        try  
        {  
            Context context=new InitialContext(props);  
              
            final String appName = "";//这是应用名,即打包的后缀是.ear ,如果不是发布的这个类型,为空  
            final String moduleName = "EjbT";//发布在JBoss中的为.jar的包名  
            final String distinctName = "";//JBoss as7允许每个部署有一个不同的名称(别名吧,可选),这里我没有设置  
            final String beanName = "HelloBean";//无状态会话bean接口的一个实现类  
            final String viewClassName = Hello.class.getName();//无状态会话bean接口的全路径:com.fhit.ejb.Hello 
              
            //最后拼接成lookup函数可识别的JNDI:"ejb:appName/moduleName/distinctName/beanName!viewClassName";  
            //这里就是ejb:/EjbT//HelloBean!com.fhit.ejb.Hello
            String jndi = "ejb:" + appName + "/" + moduleName + "/" +
            		distinctName + "/" + beanName + "!" + viewClassName;  
              
            Hello hello=(Hello)context.lookup(jndi);  
            System.out.println(hello.say("jboss"));  
        }  
        catch(NamingException e)  
        {  
            e.printStackTrace();  
        }  
    }
}

最重要的是最后一步,在工程src下新建名为jboss-ejb-client.properties的属性文件,其内容为

    endpoint.name=client-endpoint
    remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
    remote.connections=default
    remote.connection.default.host=127.0.0.1
    remote.connection.default.port = 8080
    remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
    remote.connection.default.username=fhit  这里是jboss添加的用户
    remote.connection.default.password=fhit  用户密码

然后运行客户端程序出现如下结果:


这里就表明调用成功.



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值