您的位置:首页 > 其它

kshen转weblogic8.1下EJB的部署与调用

2007-07-11 14:15 253 查看
EJB编写不容易,部署起来也不简单啊,不同的平台不同的容器不同的部署工具,头都整昏了。weblogic这东西牛,值得研究,拿它开刀。

编写过程不说,只说部署与调用,下面这三段代码已经很能说明问题。

1、ejb-jar.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC ''-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN'' ''

" target=_blank>http://java.sun.com/dtd/ejb-jar_2_0.dtd''>

<!-- Generated XML! -->

<ejb-jar>
<display-name>hello</display-name>
<enterprise-beans>
<session>
<display-name>HelloBean</display-name>
<ejb-name>Hello</ejb-name>
<home>org.bromon.ejb.session.HelloHome</home>
<remote>org.bromon.ejb.session.Hello</remote>
<local-home>org.bromon.ejb.session.HelloLocalHome</local-home>
<local>org.bromon.ejb.session.HelloLocal</local>
<ejb-class>org.bromon.ejb.session.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
<security-identity>
<use-caller-identity/>
</security-identity>

</session>
</enterprise-beans>

</ejb-jar>

2、weblogic-ejb-jar.xml(weblogic专署配置文件)
<!DOCTYPE weblogic-ejb-jar PUBLIC ''-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN'' ''

" target=_blank>http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd''>

<!-- Generated XML! -->

<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>Hello</ejb-name>
<stateless-session-descriptor>
<pool>
</pool>

<stateless-clustering>
</stateless-clustering>

</stateless-session-descriptor>

<transaction-descriptor>
</transaction-descriptor>

<jndi-name>Hello</jndi-name>
<local-jndi-name>HelloLocal</local-jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>

3、HelloClient.java(客户端代码,最好和四个接口一起打包)
/*
* Created on 2004-5-11
*/
package org.bromon.ejb.session;
import javax.naming.*;
import javax.rmi.*;
import java.util.*;
/**
* @author Bromon
*/
public class HelloClient
{
public static void main(String args[])
{
try
{
Properties prop=new Properties();
prop.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");//加载weblogic上下文环境
prop.put(Context.PROVIDER_URL,"t3://localhost:7001");//weblogic专用协议

Context ctx=new InitialContext(prop);
Object obj=ctx.lookup("Hello");
HelloHome home=(HelloHome)PortableRemoteObject.narrow(obj,HelloHome.class);
Hello hello=home.create();
System.out.println(hello.say());
hello.remove();
}catch(Exception e)
{
System.out.println(e);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: