用JBOSS群集EJB3实例

原创 2008年09月29日 20:19:00
 今天终于搞定了在JBOSS中群集EJB3中的无状态会话BEAN,心里总算松了一口2个月以来的长气,现在发出来给想无一样苦恼的人一个光明的大路

环境
MyEclipse5.5
JBoss4.2.0
测试目的:群集EJB3
首先我门先启动JBOSS.下面我用%JBOSS%来代替JBOSS的跟目录
在%JBOSS%/bin目录下先创建一个RUN.BAT的快捷方式然后,鼠标右击属性给新做的快捷方式加2个参数第1个参数是-C ALL 目的是让他启动ALL服务,第2个参数是-B 192.168.0.60都开出来了把是本机IP只有加了IP在可以让他被在局域内部被访问到.我做的是3台计算机的群集,所以3太机子上的JBOSS都的这么写注意写对IP.然后启动JBOSS OK环境就算OK了然后开始写EJB3
写远程接口

public interface HelloRemote extends Serializable {

 public String getString(int i);

然后写本地接口

@Stateless
@Clustered     //EJB3群集的标签
@Remote(HelloRemote.class)
public class HelloRemoteService implements HelloRemote {

 public String getString(int i) {
  
   System.out.println("我被执行了第"+i+"次");
  
  
  return null;
 }

}

EJB写的很简单就是在服务器上打一句话而已,完了将EJB3打成JAR包部署到
%JBOSS%/server/all/farm目录下,注意在这个目录发布完后,其他机子上同时会响应及其他机子上也会发布完成这个JAR包.下面开始运行这个EJB,当然要重新在局域网内找一台机子做客户端调用.
首先在那台机子上将刚才的JAR包导入项目中完了写测试代码
Public class EJBFactory {
   
    public static Object getEJB(String jndipath) {
        try {
            Properties props = new Properties();
           
            props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
            props.setProperty("java.naming.provider.url", "192.168.0.149:1099,192.168.0.60,192.168.0.51:1099");
            props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
            props.setProperty("jnp.disableDiscovery", "true");
//        
//            props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
//            props.setProperty("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
//            props.setProperty("java.naming.provider.url", "192.168.0.251:3700");
//            props.setProperty("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
//          
            InitialContext ctx = new InitialContext(props);
            return ctx.lookup(jndipath);
        } catch (NamingException e) {
            e.printStackTrace();
        }
        return null;
    }
}
看清楚我写了3个IP地址,这样做的好处是随便那个机子挂掉其他机子一样可以运行
测试代码

public class Test {
public static void main(String[] args) {
 
 HelloRemote helloRemote =(HelloRemote)EJBFactory.getEJB("HelloRemoteService/remote");
 for(int i=0;i<10;i++){
  helloRemote.getString(i);
 }
}
}
运行测试代码我门可以发现在3台服务器上他会打印出结果.这是JBOSS自己的负载平衡功能帮助我门实现的,呵呵写完了,这简单的实现我郁闷了2个月,郁闷~~~呵呵希望能给研究EJB3集群的朋友一点帮助
QQ58194033有问题我门可以继续探讨

JBoss下EJB3.x简单环境搭建实例

一、环境说明 开发环境:Eclipse Java EE IDE for Web Developers  Version: Kepler Service Release 2 JBoss环境:jboss-...
  • zzj806683450
  • zzj806683450
  • 2014年03月17日 18:44
  • 4314

Tomcat web工程 调用 JBOSS EJB local及remote

本人调试环境是:Tomcat7  jBOSS4.2.3GA 先创建一个普通的java项目 名为HelloWorld 导入JBOSS下的client下的所有jar包 接着开始进行编码 ...
  • heardy
  • heardy
  • 2011年10月26日 10:56
  • 2995

简单EJB3例子

使用EJB3  jdk必需在1.5及以上 首先写一个EJB3.0的项目肯定有2个部分组成(下面是用eclipse+jboss-4.2.3.GA说明): 1. EJB的组件(封装了业务逻辑的...
  • lijia791541916
  • lijia791541916
  • 2015年12月18日 16:56
  • 1514

JBOSS7搭载EJB3之实体Bean

实体Bean--将简单的POJO   记录学习的脚步
  • undergrowth
  • undergrowth
  • 2014年10月29日 20:50
  • 1212

第一个jboss例子

先新建一个接口,HelloWorld.java: package com.itcast.ejb3;public interface HelloWorld { public String say(Str...
  • gaoge19861207
  • gaoge19861207
  • 2009年10月21日 23:13
  • 917

Eclipse+JBoss创建第一个EJB3项目

作者: Michael 日期: 2013 年 9 月 21 日 目录 演示环境 JBoss 配置 创建EJB工程 部署 创建客户端工程 测试 [一]...
  • boonya
  • boonya
  • 2014年06月24日 15:58
  • 1366

配置JBOSS多实例

在使用Jboss服务器时,很多情况我们需要配置多个实例,下面为大家介绍JBoss里如何配置多实例,以Jboss5.1为例介绍。 1.复制${JBOSS_HOME}\server\default文件夹...
  • kanglix1an
  • kanglix1an
  • 2014年11月12日 21:46
  • 2703

EJB3方法调用的错误及其处理

在WildFly AS 10上部署EJB服务,在Eclispe中运行单元测试,遇到如下错误: java.lang.NoSuchMethodError: org.jboss.logging.Logg...
  • taiyangdao
  • taiyangdao
  • 2016年03月07日 16:34
  • 1369

MyEclipse+JBoss+EJB3.0实例 解决XXX Not Found的问题

关于JBoss和EJB3.0的具体知识,我们在后面的总结性博客中介绍,本篇博客主要是对今天自己的成果做一个总结,为我悲惨的一天做一个总结。    这个该死的问题折腾了我一天呀!! 最开...
  • u010928470
  • u010928470
  • 2015年03月13日 19:47
  • 715

JBOSS+EJB3+MYSQL开发

参考文献: myeclipse+jboss开发EJB3.0之实体Bean MyEclipse+JBoss开发EJB3.0 ejb3.0中persistence.xml文件 EJB项目中...
  • xw13106209
  • xw13106209
  • 2011年10月20日 12:42
  • 2947
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用JBOSS群集EJB3实例
举报原因:
原因补充:

(最多只允许输入30个字)