WebSphere下从helloWorld开始开发EJB

原创 2004年10月29日 16:14:00

一、准备工作<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1、          ejb容器:WebSphere5.1.2

2、          开发工具:wsad5.1

二、开发helloWorld ejb程序。

1、          Home接口

package ljb.ejb.helloworld;

import java.rmi.RemoteException;

import javax.ejb.EJBHome;

import javax.ejb.CreateException;

 

 

public interface HelloEjbHome extends EJBHome{

  

   HelloEjbObject create() throws CreateException, RemoteException;

 

}

2、             Ejb对象接口

 

package ljb.ejb.helloworld;

 

import java.rmi.RemoteException;

import javax.ejb.EJBObject;

public interface HelloEjbObject extends EJBObject{

       

   public String helloworld() throws RemoteException;

 

}

3、             Bean

/*

 * HelloWorld EJB created by liaojingbin 2004-10-25

 */

package ljb.ejb.helloworld;

import javax.ejb.*;

/**

 * @author ljb

 */

public class HelloBean implements SessionBean{

  

   private int i = 0;

  

   public void ejbCreate(){}

   public void ejbRemove(){}

   public void ejbActivate(){}

   public void ejbPassivate(){}

   public void setSessionContext(SessionContext ctx){}

 

   public String helloworld()

   {

      return new String("HelloWorld");

   }

 

}

4、             使用jsp调用ejb

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>

<HEAD>

<%@ page

language="java"

contentType="text/html; charset=GBK"

pageEncoding="GBK"

import="ljb.ejb.helloworld.*,javax.naming.*,javax.rmi.*"

%>

<META http-equiv="Content-Type" content="text/html; charset=GBK">

<META name="GENERATOR" content="IBM WebSphere Studio">

<TITLE>Hello.jsp</TITLE>

</HEAD>

<BODY>

<%

    InitialContext ict = new InitialContext();

    Object obj = ict.lookup("ejb/ljb/ejb/helloworld/HelloBean");

    HelloEjbHome home = (HelloEjbHome)PortableRemoteObject.narrow(obj,HelloEjbHome.class);

    HelloEjbObject helloobj = home.create();

    out.println(helloobj.helloworld());

%>

 

 

</BODY>

</HTML>

 

5、             web.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app id="WebApp">

    <display-name>HelloEjbWeb</display-name>

    <servlet>

        <servlet-name>Hello</servlet-name>

        <display-name>Hello</display-name>

        <jsp-file>/Hello.jsp</jsp-file>

    </servlet>

    <welcome-file-list>

        <welcome-file>index.html</welcome-file>

        <welcome-file>index.htm</welcome-file>

        <welcome-file>index.jsp</welcome-file>

        <welcome-file>default.html</welcome-file>

        <welcome-file>default.htm</welcome-file>

        <welcome-file>default.jsp</welcome-file>

    </welcome-file-list>

    <ejb-ref id="EjbRef_1098762343451">

        <ejb-ref-name>ejb/ljb/ejb/helloworld/HelloBean</ejb-ref-name>

        <ejb-ref-type>Session</ejb-ref-type>

        <home>ljb.ejb.helloworld.HelloEjbHome</home>

        <remote>ljb.ejb.helloworld.HelloEjbObject</remote>

    </ejb-ref>

</web-app>

6Ejb-jar.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">

<ejb-jar id="ejb-jar_ID">

    <display-name>HelloEjbObject</display-name>

    <enterprise-beans>

        <session id="Session_1098956693725">

            <display-name>HelloEjb</display-name>

            <ejb-name>HelloEjb</ejb-name>

            <home>ljb.ejb.helloworld.HelloEjbHome</home>

            <remote>ljb.ejb.helloworld.HelloEjbObject</remote>

            <ejb-class>ljb.ejb.helloworld.HelloBean</ejb-class>

            <session-type>Stateless</session-type>

            <transaction-type>Container</transaction-type>

        </session>

    </enterprise-beans>

</ejb-jar>

6、          application.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd">

<application id="Application_ID">

    <display-name>HelloEjb</display-name>

    <module id="EjbModule_1098694584637">

        <ejb>HelloEjbEJB.jar</ejb>

    </module>

    <module id="WebModule_1098694584637">

        <web>

            <web-uri>HelloEjbWeb.war</web-uri>

            <context-root>HelloEjbWeb</context-root>

        </web>

    </module>

</application>

 

wsad中测试通过后就可以发布到webshpere上了,下面是发布的步骤,对于新手来说,下面这种方式要简单一些:

1http://localhost:9090/admin/ 进入管理控制台

2在左边的菜单上选择:应用程序/安装新的应用程序(在安装新的应用程序前,你首先要在wsad中将你的企业应用程序导出为一个ear文件)

3、             以下按步骤安装就可以了,注意的是:

绑定企业 Bean JNDI :你的一个bean会绑定到一个jndi名称,它在ejb-jar.xml中指定,一般为:ejb///xxxBean,我的这个是ejb/ljb/ejb/helloworld/HelloBean

映射 EJB 引用到企业 Bean:这是也要指定一个jndi名称:是你的web应用调用的那个企业beanjndi名称,这里ejb/ljb/ejb/helloworld/HelloBean

安装完成后访问

http://localhost:9080/HelloEjbWeb/Hello.jsp

输出:HelloWorld,一切ok

 

websphere6.1开发、部署、远程调用EJB2.0

开发工具是IBM RAD 7.5.4。 WAS版本6.1。 EJB版本2.0。 开发过程如图: 新建完后,工程结构如下: 再新...
  • feier7501
  • feier7501
  • 2014年03月02日 00:57
  • 2208

EJB3.0环境搭建+HelloWorld实现(JBoss7.1.1_Eclipse Juno)

I、环境搭建 一、所需环境 1、 JDK(1.6 及以上版本) 2、 Eclipse(本人使用 Juno 版) 3、 JBoss 7.1.1  下载地址:http://download....
  • hyugahinat
  • hyugahinat
  • 2015年04月27日 14:23
  • 4846

EJB3.0学习(二)第一个程序HelloWorld

 开发只存在Remote接口的无状态的BEAN一、要定义一个会话BEAN,首先要定义一个包含他所有业务方法的接口。这个接口不需要任何注释,和普通的java接口一样定义。调用EJB的客户端通过使用这个接...
  • clchun4352
  • clchun4352
  • 2006年09月15日 09:36
  • 2114

EJB3.0之HelloWorld

开发工具:javaee版本的eclipse、JDK1.6、jboss5.0.0 注意:jboss的路径不能有中文,否则会报错。 新建ejb工程,选择jboss5和ejb3 ...
  • feier7501
  • feier7501
  • 2014年02月27日 21:39
  • 785

全自动的使用ANT编译,打包EJB项目,并且部署到Websphere服务器上面

全自动的使用ANT编译,打包EJB项目,并且部署到Websphere服务器上面。 收藏 全自动的使用ANT编译,打包EJB项目,并且部署到Websphere服务器上面。 题外话,刚发现JAVAEYE没...
  • dyllove98
  • dyllove98
  • 2009年09月16日 22:54
  • 2196

EJB学习笔记二(HelloWorld程序)

1.前言 上一篇博客,从宏观上介绍了一下EJB的理论知识,这篇博客以一个简单的HelloWorld的程序来做一个小程序。  2.环境配置 本例子用的是MyElicpse+JBoss,需要首先...
  • ZHOUCHAOQIANG
  • ZHOUCHAOQIANG
  • 2015年07月28日 15:45
  • 1249

WebSphere下用JNDI查找EJB需要注意的问题

自己遇到过的问题,贴出来让和我遇到同样问题的人参考一下远程客户端测试代码Properties properties =new   Properties(); properties.setPropert...
  • adsuccessy4657
  • adsuccessy4657
  • 2010年12月07日 08:54
  • 604

EJB开发第一个无状态会话bean、开发EJB客户端

开发第一个无状态会话bean EJB中的三中bean: 会话Bean(Session Bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过JDBC直接操作数据库,但大多数情况下...
  • Jerome_s
  • Jerome_s
  • 2014年07月05日 09:31
  • 1305

EJB CMP

 转贴自  http://hi.baidu.com/zdtools/blog/item/714110a842ccb7b2cb130c53.html 7.6     在RAD中创建CMP Entity ...
  • icecityman
  • icecityman
  • 2009年04月28日 14:23
  • 905

在eclipse上使用maven创建ejb-helloworld项目

前提条件:已安装eclipse,并完成maven配置 1. 新建maven project,填好Artifact上的Group Id和Artifact Id,Packaging中选择pom ...
  • haitaolang
  • haitaolang
  • 2017年03月17日 14:11
  • 480
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:WebSphere下从helloWorld开始开发EJB
举报原因:
原因补充:

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