Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7068430
  • 博文数量: 702
  • 博客积分: 10821
  • 博客等级: 上将
  • 技术积分: 12031
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-02 10:41
个人简介

中科院云平台架构师,专注于数字化、智能化,技术方向:云、Linux内核、AI、MES/ERP/CRM/OA、物联网、传感器、大数据、ML、微服务。

文章分类

全部博文(702)

分类: Java

2013-01-06 02:59:54

EJB3.1 JBoss7.1 Eclipse3.7---helloworld实现 一、环境配置:
JDK:正常配置
Eclipse:正常下载,解压(V3.7) JBoss:正常下载,解压(V7.1) 二、JBoss Tools安装
在Eclipse里面安装JBoss Tools3.3
1、【Help】——>【Install New Software】——>【Add】
输入:
Name: JBossTools
Location:
http://download.jboss.org/jbosstools/updates/development/indigo/
——>【OK】——>【Select All】——>【Next】
——>(中间的步骤一直NEXT,需要选择同意)——>【Finish】
2、【Help】——>【Install New Software】——>【Add】
输入:
Name: JBossTools Aop
Location:
http://download.jboss.org/jbosstools/updates/development/indigo/soa-tooling/
——>【OK】——>【Select All】——>【Next】
——>(中间的步骤一直NEXT,需要选择同意)——>【Finish】
三、Eclipse里面配置JBoss
【File】——>【New】——>【Other】
(找到Server,并且选择)——>【Next】
(找到JBoss Community,选择JBoss AS 7.1)——>【Next】
(找到Home Directory)——>【Browse…】——>
(选择JBoss解压的位置,即JBoss Home)——>
(找到JRE,选择你安装的JRE)——>【Next】
——>【Next】——>【Finish】

以上步骤完毕后,在Servers视图内会有JBoss服务器出现。
点击该视图内的启动按钮,JBoss服务器开始启动
浏览器可以访问
,就算配置成功。 四、第一个EJB工程
【File】——>【New】——>【Other】
(找到EJB,并且选择EJB Project)——>【Next】
输入:
Project name:TestEJB
Target runtime:选择JBoss7.1
EJB module version:选择3.1
——>【Next】——>【Next】
(选择Generate ejb-jar.xml deployment descriptor)
——>【Finish】
生成的目录结构中,ejbModule目录为我们要写JAVA源代码的目录。
即EJB写在这里。
在ejbModule目录上右键【New】——>【Other】
(找到EJB,并且选择Session Bean(EJB 3.x))——>【Next】
输入:包名(com.ejb)、EJB类名(HelloWorld),
State type部分:选择Stateless
然后选择Remote  ——>【Finish】
自动生成代码如下:
package com.ejb; import javax.ejb.Remote;
@Remote public interface HelloWorldRemote { } package com.ejb;   import javax.ejb.LocalBean; import javax.ejb.Stateless;   /**  * Session Bean implementation class HelloWorld  */ @Stateless @LocalBean public class HelloWorld implements HelloWorldRemote {       /**      * Default constructor.      */     public HelloWorld() {         // TODO Auto-generated constructor stub     } } 在接口里面增加以下方法 public String sayHello(String name); 类里面实现该方法 public String sayHello(String name){         return "Hello this is " + name + "!";     }
五、部署EJB
在工程上右键——>【Export】——>【EJB JAR file】
在Destination处:——>【Browse…】——> 选择JBoss服务器的部署目录,我的目录如下: D:\eclipse-jboss\jboss-as-7.1.1.Final\standalone\deployments\TestEJB.jar 然后——>【Finish】 在Console视图会出现详细部署信息 六、客户端代码
1、新建一个普通Java Project工程:
2、加入JBOSS运行库,及jboss\bin\client下的jboss-client.jar包 3、把EJB的接口拷贝到该工程内: 4、新建一个客户端类:类名(ClientTest) 代码如下:
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.InitialContext; import javax.naming.NamingException;   import com.ejb.HelloWorldRemote;     public class ClientTest {       /**      * @param args      */     public static void main(String[] args) {         // TODO Auto-generated method stub                 Hashtable jndiProperties = new Hashtable();                 jndiProperties.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");                 try {                     Context context = new InitialContext(jndiProperties);                                        final String appName = "";                     final String moduleName = "TestEJB";                     final String distinctName = "";                                        Object obj = context.lookup("ejb:" + appName + "/" + moduleName + "/" + distinctName + "/HelloWorld!com.ejb.HelloWorldRemote");                                        HelloWorldRemote hwr =                             (HelloWorldRemote)obj;                     String say = hwr.sayHello("hiyaSoft");                     System.out.println(say);                 } catch (NamingException e) {                     e.printStackTrace();                 }     } } 5、在classPath下增加“jboss-ejb-client.properties”文件,内容如下 remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.default.host=localhost
remote.connection.default.port = 4447
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
6、运行该客户端,有如下结果: Hello hiyaSoft!  
 
阅读(3262) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~