Jboss+esb+实例开发文档.docx

上传人:b****7 文档编号:9969185 上传时间:2023-02-07 格式:DOCX 页数:16 大小:244.99KB
下载 相关 举报
Jboss+esb+实例开发文档.docx_第1页
第1页 / 共16页
Jboss+esb+实例开发文档.docx_第2页
第2页 / 共16页
Jboss+esb+实例开发文档.docx_第3页
第3页 / 共16页
Jboss+esb+实例开发文档.docx_第4页
第4页 / 共16页
Jboss+esb+实例开发文档.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

Jboss+esb+实例开发文档.docx

《Jboss+esb+实例开发文档.docx》由会员分享,可在线阅读,更多相关《Jboss+esb+实例开发文档.docx(16页珍藏版)》请在冰豆网上搜索。

Jboss+esb+实例开发文档.docx

Jboss+esb+实例开发文档

Jbossesb实例开发文档

(su_jian)

1、必备条件

1)JBOSSESB服务器本实例用的是:

jbossesb-server-4.4.GA.zip。

解压后设置相关的环境变量,在上个文档中已经设置。

2)Eclipse:

Buildid:

20100218-1602,eclipse版本,eclipse-jee-galileo-SR2-win32.zip

3)eclipse插件版本:

JBossTools-Update-3.1.1.v201006011046R-H111-GA.zip

以上开发软件以及版本是相对应的,如果你想要其他版本的软件。

则必须注意:

相关的软件版本必须一致,否则就没有办法进行(jboss官网有相关插件与eclipse对应的版本信息);

2、开发实例

1)在eclipse里创建esb项目实例(相关插件安装上个文档已经说明)

(1)新建一个esb项目,如下图所示:

点击“next”如下图所示:

填写项目名称,选择TargetRuntime为:

Jboss4.2Runtime,选择JbossEsbversion为:

4.2。

点击“next”如下图所示:

点击“next”如下图所示:

点击“finish”完成。

项目结构图如下所示:

2)服务器可以选择JBOSS或者ESBServer

创建jboosserver:

点击"Preferences"找到“server”选项,然后点击"runtimeEnviroments"如下图所示:

点击“add”按钮,出现如下图所示:

选择Jbosscommunity->Jboss4.2Runtime点击“next”

选择HomeDirectory选择JbossEsb路径和JRE“Finish”然后完成就可以了。

3)写测试代码

项目包结构如下图所示:

(1)首先在esbcontent/META-INF下新建一个配置文件:

jboss-esb.xml

输入如下内容:

xmlversion="1.0"encoding="UTF-8"?

>

xmlns="

xmlns:

xsi="http:

//www.w3.org/2001/XMLSchema-instance"

xsi:

schemaLocation="http:

//anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"

parameterReloadSecs="5">

dest-name="queue/quickstart_helloworld_Request_gw"/>

dest-name="queue/quickstart_helloworld_Request_esb"/>

description="HelloWorld">

is-gateway="true"/>

class="org.jboss.soa.esb.samples.quickstart.helloworld.MyJMSListenerAction"

process="displayMessage"/>

 

类中的Action的路径根据自己的需要自己修改。

(2)新建MyJMSListenerAction类

packageorg.jboss.soa.esb.samples.quickstart.helloworld;

importorg.jboss.soa.esb.actions.AbstractActionLifecycle;

importorg.jboss.soa.esb.helpers.ConfigTree;

importorg.jboss.soa.esb.message.Message;

/**

*jboss_esb开发

*@authorsu_jian

*/

publicclassMyJMSListenerActionextendsAbstractActionLifecycle{

protectedConfigTree_config;

publicMyJMSListenerAction(ConfigTreeconfig){

_config=config;

}

publicMessagedisplayMessage(Messagemessage)throwsException{

System.out.println("接受到的message是:

"+message.getBody().get());

returnmessage;

}

}

(3)在esbcontent目录下新建:

jbm-queue-service.xml

xmlversion="1.0"encoding="UTF-8"?

>

name="jboss.esb.quickstart.destination:

service=Queue,name=quickstart_helloworld_Request_esb"

xmbean-dd="xmdesc/Queue-xmbean.xml">

jboss.messaging:

service=ServerPeer

jboss.messaging:

service=PostOffice

name="jboss.esb.quickstart.destination:

service=Queue,name=quickstart_helloworld_Request_gw"

xmbean-dd="xmdesc/Queue-xmbean.xml">

jboss.messaging:

service=ServerPeer

jboss.messaging:

service=PostOffice

(4)最后新建esb部署文件deployment.xml在META-INF文件夹下:

jboss.esb.quickstart.destination:

service=Queue,name=quickstart_helloworld_Request_esb

jboss.esb.quickstart.destination:

service=Queue,name=quickstart_helloworld_Request_gw

 

发布工程到jboss服务器,并启动服务器:

(5)新建测试类

如下图所示就可以发布了。

然后新建测试类

packageorg.jboss.soa.esb.samples.quickstart.helloworld;

importjava.util.Properties;

importjavax.jms.JMSException;

importjavax.jms.ObjectMessage;

importjavax.jms.Queue;

importjavax.jms.QueueConnection;

importjavax.jms.QueueConnectionFactory;

importjavax.jms.QueueSender;

importjavax.jms.QueueSession;

importjavax.naming.Context;

importjavax.naming.InitialContext;

importjavax.naming.NamingException;

/**

*jboss_esb测试类

*@authorsu_jian

*/

publicclassSendJMSMessage{

QueueConnectionconn;

QueueSessionsession;

Queueque;

publicvoidsetupConnection()throwsJMSException,NamingException

{

Propertiesproperties1=newProperties();

properties1.put(Context.INITIAL_CONTEXT_FACTORY,

"org.jnp.interfaces.NamingContextFactory");

properties1.put(Context.URL_PKG_PREFIXES,

"org.jboss.naming:

org.jnp.interfaces");

properties1.put(Context.PROVIDER_URL,"jnp:

//127.0.0.1:

1099");

InitialContextiniCtx=newInitialContext(properties1);

Objecttmp=iniCtx.lookup("ConnectionFactory");

QueueConnectionFactoryqcf=(QueueConnectionFactory)tmp;

conn=qcf.createQueueConnection();

que=(Queue)iniCtx.lookup("queue/quickstart_helloworld_Request_gw");

session=conn.createQueueSession(false,QueueSession.AUTO_ACKNOWLEDGE);

conn.start();

System.out.println("ConnectionStarted");

}

publicvoidstop()throwsJMSException

{

conn.stop();

session.close();

conn.close();

}

publicvoidsendAMessage(Stringmsg)throwsJMSException{

QueueSendersend=session.createSender(que);

ObjectMessagetm=session.createObjectMessage(msg);

send.send(tm);

send.close();

}

publicstaticvoidmain(Stringargs[])throwsException

{

SendJMSMessagesm=newSendJMSMessage();

sm.setupConnection();

sm.sendAMessage("这里是发送的消息");//这里输入消息文本

sm.stop();

}

}

(6)运行新建的测试类可以看到启动的jboss服务器中出现如下所示信息:

11:

28:

15,765INFO[STDOUT]接受到的message是:

这里是发送的消息

则表明调用成功!

OK

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 交通运输

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1