CN102437945B - 一种Camel路由和媒介引擎导入方法、装置及架构 - Google Patents
一种Camel路由和媒介引擎导入方法、装置及架构 Download PDFInfo
- Publication number
- CN102437945B CN102437945B CN201010296827.3A CN201010296827A CN102437945B CN 102437945 B CN102437945 B CN 102437945B CN 201010296827 A CN201010296827 A CN 201010296827A CN 102437945 B CN102437945 B CN 102437945B
- Authority
- CN
- China
- Prior art keywords
- self
- camel
- xsd
- configuration file
- interpreter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明适用于计算机技术领域,提供了一种Camel路由和媒介引擎导入方法、装置及系统,包括:将自定义命名空间添加到Camel的命名空间;在Camel解释器中对自定义解释器进行注册;将自定义组件实例注册到Camel的上下文对象中;建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明通过将自定义组件实例注册到Camel的上下文对象中,实现了用户自定义Camel路由和媒介引擎的导入,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了Camel的功能。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种Camel路由和媒介引擎导入方法、装置及架构。
背景技术
Camel架构除支持脚本语言实现路由逻辑外,目前只能通过Camel支持的XML配置文件方式配置动态的路由,其XML配置是基于依赖注入的方式,有固定的XML基本类型定义(XML schema)来描述可以配置的XML标签和约束。Camel的XML配置已经有固定的实现,只能根据它的约定来配置路由,并且难以修改Camel的XML配置解析引擎,如果使用自定义配置内容则不能通过Camel默认的解释器检验,或者只能借助注入对象属性的原始方式进行烦琐、可读性和理解性差的配置,导致自定义路由和媒介引擎无法导入,难以实现自定义组件的添加。
发明内容
本发明实施例的目的在于提供一种Camel路由和媒介引擎导入方法,旨在解决由于Camel只支持其自身XML配置文件方式配置动态路由,导致自定义路由和媒介引擎无法导入,难以实现自定义组件的添加的问题。
本发明实施例是这样实现的,一种Camel路由和媒介引擎导入方法,所述方法包括下述步骤:
将自定义命名空间添加到Camel的命名空间;
在Camel解释器中对自定义解释器进行注册;
将自定义组件实例注册到Camel的上下文对象中;
建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
本发明实施例的另一目的在于提供一种Camel路由和媒介引擎导入装置,所述装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
本发明实施例的另一目的在于提供一种包括Camel路由和媒介引擎导入装置的系统,所述Camel路由和媒介引擎导入装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的导入,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强Camel的功能。
附图说明
图1是本发明第一实施例提供的Camel路由和媒介引擎导入方法的实现流程图;
图2是本发明第三实施例提供的导入后的Camel路由和媒介引擎各部分的关联关系图;
图3是本发明第三实施例提供的Camel路由和媒介引擎导入装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过将自定义组件实例注册到Camel的上下文对象中,并将预先生成配置文件与Camel的XML配置进行关联,实现用户自定义Camel路由和媒介引擎的导入,提高Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了Camel的功能。
本发明实施例提供了一种Camel路由和媒介引擎导入方法,所述方法包括下述步骤:
将自定义命名空间添加到Camel的命名空间;
在Camel解释器中对自定义解释器进行注册;
将自定义组件实例注册到Camel的上下文对象中;
建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
本发明实施例还提供了一种Camel路由和媒介引擎导入装置,所述装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于构建Camel的XML配置文件与预先构建的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
本发明实施例还提供了一种包括Camel路由和媒介引擎导入装置的系统,所述Camel路由和媒介引擎导入装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于构建Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的导入,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了Camel的功能。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
图1示出了本发明第一实施例提供的Camel路由和媒介引擎导入方法的实现流程,详述如下:
在步骤S101中,将自定义命名空间添加到Camel的命名空间;
在本发明实施例中,企业可以按照自身的需要建立企业的命名空间,以清楚地标注企业服务特点。
在步骤S102中,在Camel解释器中对自定义解释器进行注册;
在步骤S103中,将自定义组件实例注册到Camel的上下文对象中;
在本发明实施例中,Camel的上下文对象负责自定义组件实例的注册,并保存相应的路由和媒介规则。
在步骤S104中,建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
在本发明实施例中,应生成描述自定义XML文档的合法构建模块的自定义XSD,生成所述自定义XSD的XSD配置文件Schema,生成对所述自定义解释器进行描述的配置文件,并通过Camel的XML配置文件建立与这些文件的关联关系,从而建立对其的引用。
本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,将预先生成的自定义XSD、XSD配置文件Schema、以及自定义解释器的配置文件与Camel的XML配置文件进行关联,实现用户自定义Camel路由和媒介引擎的导入,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了Camel的功能。
实施例二:
图2示出了本发明第二实施例提供的导入后的Camel路由和媒介引擎的各部分的关联关系,详述如下:
在本发明实施例中,默认XSD,Camel的XML配置文件,解释器注册类,Camel上下文为现有Camel的组成部分,NamespaceHandlerSupport为解释器注册类的基类,解释器注册类继承自NamespaceHandlerSupport类。自定义XSD、XSD配置文件Schema、自定义解释器的配置文件Handlers,以及自定义XML解释器类为导入的Camel路由和媒介引擎的组成部分,都与Camel的XML配置文件存在关联关系。接口BeanDefinitionParser定义了解释器的基本接口,自定义XML解释器类对其进行了实现,通过定义良好地接口,较好地对接收到的XML格式数据进行解析。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
实施例三:
图3示出了本发明第三实施例提供的Camel路由和媒介引擎导入装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
命名空间扩展单元31,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元32,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元33,用于将自定义组件实例注册到Camel的上下文对象中;
自定义XSD生成单元34,用于生成自定义XML文档的合法构建模块;
在本发明实施例中,自定义XML文档的合法构建模块包括定义可出现在文档中的元素,元素属性,元素的子元素,子元素的次序,子元素的数目,以及元素和属性的默认值以及固定值等。
XSD配置文件Schema生成单元35,用于生成所述自定义XSD生成单元34生成的自定义XSD的XSD配置文件Schema,对自定义XSD进行描述;
自定义解释器的配置文件生成单元36,用于生成对自定义解释器进行描述的配置文件;以及
关联关系构建单元37,用于构建Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的生成,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中构建和生成相应的路由和媒介引擎,进一步增强了Camel的功能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种Camel路由和媒介引擎导入方法,其特征在于,所述方法包括下述步骤:
将自定义命名空间添加到Camel的命名空间;
在Camel解释器中对自定义解释器进行注册;
将自定义组件实例注册到Camel的上下文对象中;
建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
2.如权利要求1所述的方法,其特征在于,所述建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联的步骤之前,所述方法进一步包括下述步骤:
生成描述自定义XML文档的合法生成模块的自定义XSD;
生成所述自定义XSD的XSD配置文件Schema;
生成对所述自定义解释器进行描述的配置文件。
3.一种Camel路由和媒介引擎导入装置,其特征在于,所述装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
4.如权利要求3所述的装置,其特征在于,所述装置还包括:
自定义XSD生成单元,生成描述自定义XML文档的合法构建模块的自定义XSD;
XSD配置文件Schema生成单元,生成所述自定义XSD生成单元生成的自定义XSD的XSD配置文件Schema;以及
自定义解释器的配置文件生成单元,生成对自定义解释器进行描述的配置文件。
5.一种包括Camel路由和媒介引擎导入装置的系统,其特征在于,所述Camel路由和媒介引擎导入装置包括:
命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;
组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于建立Camel的XML配置文件与所述自定义命名空间、预先生成的自定义XSD、预先生成的XSD配置文件Schema、以及预先生成的所述自定义解释器的配置文件的关联。
6.如权利要求5所述的系统,其特征在于,所述Camel路由和媒介引擎导入装置还包括:
自定义XSD生成单元,生成描述自定义XML文档的合法构建模块的自定义XSD;
XSD配置文件Schema生成单元,生成所述自定义XSD生成单元生成的自定义XSD的XSD配置文件Schema;以及
自定义解释器的配置文件生成单元,生成对自定义解释器进行描述的配置文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010296827.3A CN102437945B (zh) | 2010-09-29 | 2010-09-29 | 一种Camel路由和媒介引擎导入方法、装置及架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010296827.3A CN102437945B (zh) | 2010-09-29 | 2010-09-29 | 一种Camel路由和媒介引擎导入方法、装置及架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102437945A CN102437945A (zh) | 2012-05-02 |
CN102437945B true CN102437945B (zh) | 2014-05-07 |
Family
ID=45985828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010296827.3A Active CN102437945B (zh) | 2010-09-29 | 2010-09-29 | 一种Camel路由和媒介引擎导入方法、装置及架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102437945B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160188609A1 (en) * | 2014-12-29 | 2016-06-30 | Futurewei Technologies, Inc. | System and Method for Model-based Search and Retrieval of Networked Data |
CN105550354B (zh) * | 2015-12-29 | 2019-05-31 | 珠海金山网络游戏科技有限公司 | 一种配置文件管理的方法和系统 |
CN106506359B (zh) * | 2016-10-20 | 2019-07-05 | 北京工业大学 | 一种命名中心网络的网络自定义组织中间件 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101311903A (zh) * | 2007-05-22 | 2008-11-26 | 国际商业机器公司 | 对基于组件的软件系统中的组件进行重用的方法和装置 |
CN101710361A (zh) * | 2009-11-13 | 2010-05-19 | 北京航空航天大学 | 基于面向服务架构的分布式交通仿真平台及其仿真方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7752639B2 (en) * | 2006-08-21 | 2010-07-06 | International Business Machines Corporation | Apparatus, system, and method for a programming model for accessing EIS systems as services |
US8010941B2 (en) * | 2007-05-07 | 2011-08-30 | International Business Machines Corporation | Method and system for dynamically generating enterprise java beans during installation of a service component architecture application |
-
2010
- 2010-09-29 CN CN201010296827.3A patent/CN102437945B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101311903A (zh) * | 2007-05-22 | 2008-11-26 | 国际商业机器公司 | 对基于组件的软件系统中的组件进行重用的方法和装置 |
CN101710361A (zh) * | 2009-11-13 | 2010-05-19 | 北京航空航天大学 | 基于面向服务架构的分布式交通仿真平台及其仿真方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102437945A (zh) | 2012-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102819766A (zh) | 一种表单校验方法、装置及企业系统 | |
CN103024059B (zh) | 一种物联网中间件系统 | |
CN107463545A (zh) | 一种在线合同文档的生成方法、电子设备及存储介质 | |
US8423561B2 (en) | Method and system for simplifying object mapping for a user interface | |
CN107463409A (zh) | 一种接口转换方法、接口转换器、存储介质及电子终端 | |
US20090183144A1 (en) | Method and system for providing a componentized resource adapter architecture | |
CN102456033B (zh) | 一种页面通用查询的方法、系统及终端 | |
CN102446090B (zh) | 一种测试脚本的自动生成方法和装置 | |
CN102929867A (zh) | 用于自动化的文档翻译的技术 | |
CN106406951A (zh) | 一种操作系统的安装方法和装置 | |
BRPI0711782A2 (pt) | virtualização da experiência do usuário do dispositivo móvel | |
US20070143330A1 (en) | Processing an XML schema | |
CN104881490A (zh) | 一种web表单数据存取方法和系统 | |
US8914482B2 (en) | Translation of technology-agnostic management commands into multiple management protocols | |
CN102196306A (zh) | 一种向网络电视写入序列号和mac地址的方法及装置 | |
CN102437945B (zh) | 一种Camel路由和媒介引擎导入方法、装置及架构 | |
US11093705B2 (en) | Apparatus and method of verifying simultaneous edit match for markup language-based document | |
CN101771930A (zh) | 一种用户终端、软件托管业务管理系统和管理方法 | |
CN113672204A (zh) | 一种接口文档生成方法、系统、电子设备及存储介质 | |
CN105245369B (zh) | 一种支持多传输协议的组件发布容器方法 | |
CN103473034A (zh) | 一种动态发布Web 服务的方法和装置 | |
US20080216050A1 (en) | Method and System for Accessing a Resource Implemented in a Computer Network | |
CN103326930A (zh) | 开放平台接口自动巡检方法和系统 | |
JP2013030167A (ja) | ユーティリティメータ設定のためのシステム、方法、および装置 | |
CN103561113A (zh) | Web Service接口的生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221116 Address after: 266000 201A, Floor 2, International Ocean Sensor Research Institute, Qingdao Langu Keji Road, Aoshanwei Street, Jimo City, Qingdao, Shandong Province Patentee after: Qingdao Kingdee Software Technology Co.,Ltd. Address before: 518000 hi tech Industrial Village, Shennan Avenue, Shenzhen, Guangdong, Nanshan District W1-B4 Patentee before: Kingdee software (China) Co.,Ltd. |
|
TR01 | Transfer of patent right |