JBI中SE的开发过程

原创 2006年06月12日 11:38:00

SE开发

1)实现Bootstrap接口,这个类将在SE在安装时被调用。所有和程序相关的动作将在这个类中完成初始化与消除(uninstall)

2)实现接口:serviceunitManager接口。这个接口在SE部署SU时将会被调用。用来管理SU的生命周期,如Start,Stop,ShutDown,Init。所有和SU相关的初如化工作将在里初始化与结束。它的构造函数中接收javax.jbi.component.ComponentContext做为参数。

start方法中:

a.     组件必须通知JBI引擎,它已经是一个激活的endpoint

b.     创建一个与service名字相匹配的javax.xml.namespace.QName类型的类实例,和你组件将提供的URI

c.     这些值必须与组件的部署描述文档中的值一样

d.     创建一个javax.jbi.servicedesc.ServiceEndpoint类对象,并通过ComponentContextk r activateEndpoint方法来激活。

e.     在部署描述文档中引用你所创建的endpoint。如下所示:

QName qn = new QName("http://www.payroll.org/payroll.wsdl","PayrollService");

try {

ServiceEndpoint ref = mContext.activateEndpoint(qn, "SE_Endpoint");

} catch (JBIException JBIe) {

...

}

以上和种配置不应用硬编码的方式写入,而应当是通过ServiceUnitManagerdeploy方法中的ServiceUnitPath参数获得XML描述文档jbi.xml,经过parse生成正确的值。

3)实现Runnable接口,来接收来自NMRJBI Engine的消息。

并且实现:getServiceDescription(ServiceEndpoint),isExchangeWithConsumerOkay(SE,ME),ResolveEndpointReference(DocumentFragment).

4)实现component类。这个类是组件的核心类,负责接收,处理,返回消息。

init方法中:

a.     存储ComponentContext

b.     创建ServiceUnitManager

Public void init(ComponentContext compCtx){

        If(compCtx!-null){

        This.mContext=compCtx;

        This.mServiceUnitMgr=new ServiceUnitManager(compCtx);

}

}

start方法中:

a.     ComponentContext中接收DeliveryChannel对象。

b.     创建接收消息的MsgReceiver,并以DeliveryChannel对象为参数。

c.     MsgReceiver对象中启动新进程。如下所示:

try {

this.mChannel = this.mContext.getDeliveryChannel();

this.mMsgReceiver = new TestMsgReceiver(this.mChannel);

Thread recThrd = new Thread(this.mMsgReceiver);

recThrd.start();

} catch (MessagingException me) {

...

}

整体类图如下所示:(要图者QQ联系:15196866)

 

 

开发中PG,PL,SE,PM都是什么意思

项目最顶层是项目负责人,接下来项目会落实到pm(项目经理PM),项目经理将任务分成若干个子项目,每 个项目由一个pl(项目组长)负责。在每个子项目中,由SE(系统工程师)带领pg(程序员)共...
  • ahutqi
  • ahutqi
  • 2014年12月23日 16:28
  • 2653

webservice入门之CXF教程

1.CXF简介     Apache CXF是一个开源的Service框架,可以用于简化用户的service开发,基于CXF开发的应用可提供SOAP、XML/HTTP、RESTFUL HTTP或COR...
  • longshengguoji
  • longshengguoji
  • 2014年11月24日 20:34
  • 22228

Scrum敏捷开发之角色

在Scrum中有三种角色:产品负责人Product Owner,Scrum Master和Scrum团队,他们的职责分别是: 产品负责人(Product Owner) 确定产品的功能和完成时...
  • xiaoxian8023
  • xiaoxian8023
  • 2014年02月22日 23:56
  • 6507

JBI开发指南(Servicemix开发指南)

  • 2013年09月10日 11:23
  • 432KB
  • 下载

fuse SOA jbi组件开发

  • 2009年03月12日 17:01
  • 226KB
  • 下载

IEC61850Server(增加SE的建模过程)

  • 2017年06月12日 14:44
  • 4.92MB
  • 下载

ASUS P5KPL-AM SE上电过程

  • 2012年09月11日 14:10
  • 88KB
  • 下载

IEC61850Server Linux版(增加SE的建模过程)

  • 2017年06月12日 14:54
  • 1.41MB
  • 下载

protel 99se 的pcb图的打印过程

  • 2013年05月08日 17:07
  • 3.3MB
  • 下载

【J2SE】分析程序的内存分配过程

前言 最近在学习Java,从最开始的语法和面向对象概念学起,其实都是旧的知识,知识又些许的不同,唯一属于新的知识的就是学习了一些简单的内存分配,今天就来总结一下当程序执行的过程中,内存是如何...
  • cd18333612683
  • cd18333612683
  • 2016年07月09日 11:51
  • 344
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JBI中SE的开发过程
举报原因:
原因补充:

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