跪求一个EJB开发例子

ambitiontan 2006-10-24 03:54:39
最好是用"Eclipse+MyEclipse+Weblogic/Jboss"开发的例子
谢谢
...全文
212 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
killme2008 2006-10-24
  • 打赏
  • 举报
回复
接口:
package com.denny_blue.ejb3.sessions;

import javax.ejb.Remote;

import com.denny_blue.ejb3.entity.User;

@Remote
public interface Counter {
public void HelloWorld();
public int count();
public void set(int val);
public void remove();
}

有状态session bean:
package com.denny_blue.ejb3.sessions;

import javax.annotation.EJB;
import javax.ejb.Remove;
import javax.ejb.Stateful;
import javax.interceptor.Interceptors;
import com.denny_blue.ejb3.sessions.Counter;
public @Stateful class CounterBean implements Counter {
private int val;

public void HelloWorld() {
System.out.println("Hello World");
}

public int count() {
System.out.println("count()");
return ++val;
}
@Remove
public void remove() {
System.out.println("remove()");
// TODO Auto-generated method stub

}

public void set(int val) {
this.val=val;
System.out.println("set()");// TODO Auto-generated method stub

}

}
客户端:
package com.denny_blue.ejb3.client;

import javax.naming.InitialContext;

import com.denny_blue.ejb3.entity.User;
import com.denny_blue.ejb3.sessions.Counter;
public class CounterClient {
private final static int NOCLIENTS = 3;

/**
* @param args
*/
public static void main(String[] args) throws Exception {
InitialContext initialContext = new InitialContext();
Counter count=(Counter)initialContext.lookup("CounterBean/remote");
count.set(1);
System.out.println(count.count());

}

}

build.xml:需要设置jboss_home环境变量

?xml version="1.0"?>
<project name="JBoss" default="ejbjar" basedir=".">
<property environment="env" />
<property name="jboss.home" value="${env.JBOSS_HOME}" />
<property name="classes.dir" value="bin" />

<path id="classpath">
<fileset dir="${jboss.home}/client">
<include name="**/*.jar" />
</fileset>
<pathelement location="${classes.dir}" />
</path>

<target name="clean">
<delete file="${basedir}/HelloWorld.jar" />
<delete file="${jboss.home}/server/default/deploy/HelloWorld.jar" />
</target>

<target name="ejbjar" depends="clean">
<jar jarfile="HelloWorld.jar">
<fileset dir="${classes.dir}">
<include name="com/denny_blue/ejb3/sessions/*.class" />

<include name="META-INF/*.xml" />
</fileset>
</jar>
<copy file="HelloWorld.jar " todir="${jboss.home}/server/default/deploy" />
</target>

<target name="run.CounterClient">
<java classname="com.denny_blue.ejb3.client.CounterClient" fork="yes" dir=".">
<classpath refid="classpath" />
</java>
</target>
</project>

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧