- 浏览: 554130 次
- 性别:
- 来自: 西安
文章分类
- 全部博客 (251)
- UML/RUP/软件工程 (0)
- DDD:领域驱动设计 (1)
- IaaS/Paas/SaaS (1)
- Hadoop/YARN (10)
- PBDP项目 (2)
- OSGi-基础 (7)
- OSGi-Aries (2)
- OSGi-SpringDM (32)
- Oracle/MySQL/SS (8)
- Felix/Equinox/Bnd (14)
- Virgo Server/Gemini (7)
- Weblogic/JBoss/Tomcat (10)
- ActiveMQ (14)
- Camel (1)
- Spring Roo/Eclipse (7)
- Java/JSP/JSF (10)
- Maven (19)
- ESB-Mule (1)
- ESB-ServiceMix (18)
- SOA/SCA/SDO (12)
- WebService/RESTful (17)
- JS/jQuery/ExtJS (4)
- Spring/JPA/MVC (15)
- SpringSecurity (5)
- BPM/jBPM (3)
- Hudson/SVN/CI (0)
- LinuxOS/虚拟化 (25)
- Office/OpenOffice (1)
- 项目管理 (5)
- POI/jFreeChart (1)
最新评论
-
panamera:
请问JMS Transport 发布的webservice 是 ...
CXF 提供的Service Transport-JMS Transpor -
jianyi296:
where is attachment.
CXF WebService Dynamic Client -
hj01kkk:
您好,我用jdbc-user-service为什么每次验证时都 ...
SpringSecurity笔记3-Authenticating Users:Authenticaton Strategy -
wufenglin1231:
你好,我在实现Mapping exceptions to re ...
RESTful 异常处理 -
xchd:
[echo] Project: common
[echo ...
Hive安装配置学习笔记
部署单个Bundle:
1. Hot Deployment
Copy JAR文件至ServiceMix安装目录下的deploy 目录下即可。
Linux下命令:cp ProjectDir/target/foo-1.0-SNAPSHOT.jar InstallDir/deploy
2. 手动部署
(1) osgi:install , 例如:osgi:install -s file:ProjectDir/target/foo-1.0-SNAPSHOT.jar
(2) osgi:list ,查看已经安装的Bundle。
(3) osgi:uninstall 181 , Uninstall Bundle 181.
(4) osgi:resolve 181 , 解析Bundle181的依赖是否满足。
(5) osgi:start 181 182 183 , 启动三个Bundle.
(6) osgi:stop 181 182 183 , 停止三个Bundle.
(7) osgi:restart 181 182 183 , 重启三个Bundle.
3. 设置Bundle Start Level
Bundle的Start Level是一个正数,Bundle 的启动级别越低Bundle越优先启动。
(1) osgi:bundel-level 60 182 ,设置Bundle181,182的启动级别为60。
(2) osgi:start-level ,查看系统的Start Level,默认为100; 可通过osgi:start-level 200,设置为200.
部署多个Bundle:
因为许多开源的框架或工具是有多个Bundle组成的,为方便将相关的Bundle作为一个unit进行部署,
FuseESB提供了一个新的部署单元:Feature, 可以在一次部署中部署多个Bundle.
1. 创建一个Feature, 按照下面5步进行
(1) 创建一个Custom feature repository
创建目录:C:\ServiceMix-Features,在该目录下创建文件:features.xml:
<?xml version="1.0" encoding="UTF-8"?>
<features name="CustomFeatureRepository"
>
</features>
其中name="CustomFeatureRepository"为自定义的,默认为repo-0,与Maven Repository
及OBR相比,Features Repository不提供Bundle的存储,他只提供存储Bundle引用的集合。
(2) 添加一个Feature至Custom feature repository
<?xml version="1.0" encoding="UTF-8"?>
<features>
<feature name="example-camel-bundle" version="1.0.0">
<bundle>
file:C:/Projects/camel-bundle/target/camel-bundle-1.0-SNAPSHOT.jar
</bundle>
</feature>
</features>
验证是否安装成功:features:refreshUrl, features:list 或
features:list | grep example-camel-bundle
(3) 添加Local repository URL to the feature service
features:addUrl C:/ServiceMix-Features/features.xml
features:listUrl
(4) 添加依赖Feature to the feature
如果体格features依赖其他的features,可以添加features元素作为源features的子元素。当部署
拥有依赖的feature时,依赖机制将检查依赖的feature是否已经安装至容器,如果没有,依赖机制
将自动安装丢失的依赖。
<features>
<feature name="example-camel-bundle">
<bundle>
file:C:/Projects/camel-bundle/target/camel-bundle-1.0-SNAPSHOT.jar
</bundle>
<feature version="4.4.1-fuse-00-08">camel-core</feature>
<feature version="4.4.1-fuse-00-08">camel-springosgi</feature>
<feature version="4.4.1-fuse-00-08">servicemixcamel</feature>
</feature>
</features>
(5) 添加OSGi configuration to the feature
如果应用程序使用了OSGi Configuration Admin Service,那么可以给feature添加config元素进行
配置,例如下面的例子指定了prefix属性有一个值MyTransform:
<?xml version="1.0" encoding="UTF-8"?>
<features>
<feature name="example-camel-bundle">
<config name="org.fusesource.fuseesb.example"
>
prefix=MyTransform
</config>
</feature>
</features>
下面的列子演示使用上面的配置:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ctx="http://www.springframework.org/schema/context"
xmlns:osgi="http://camel.apache.org/schema/osgi"
xmlns:osgix="http://www.springframework.org/schema/osgicompendium"
...>
...
<bean id="myTransform" class="org.fusesource.fuseesb.example.MyTransform">
<property name="prefix" value="${prefix}"/>
</bean>
<osgix:cm-properties id="preProps" persistentid="org.fusesource.fuseesb.example">
<prop key="prefix">DefaultValue</prop>
</osgix:cm-properties>
<ctx:property-placeholder properties-ref="preProps" />
</beans>
上述配置中的${prefix}的值为:MyTransform.
2. 部署一个Feature
(1) 安装
首先执行:features:refreshUrl , 强制FuseESB内核重新读取所有的feature repository;
其次执行 :features:install example-camel-bundle
(2) 卸载
卸载feature:features:uninstall example-camel-bundle
卸载feature repository: features:removerepository CustomFeatureRepository
(3) 热部署
Copy Feature repository至ServiceMix安装目录下的deploy目录,热部署时推荐重新定义一个简化的
feature repository:
<?xml version="1.0" encoding="UTF-8"?>
<features name="CustomDescriptor">
<repository>C:/ServiceMix-Features/features.xml</repository>
<feature name="hot-example-camel-bundle">
<feature>example-camel-bundle</feature>
</feature>
</features>
(4) 添加一个Feature至boot configuration
如果期望提供Apache Karaf的Copy 部署在多个主机上,那么可以添加一个feature至boot
configuration, 当Karaf第一次启动时将决定哪些是已经安装的features的集合。可修改安装
目录etc下的org.apache.karaf.features.cfg文件,在该文件中:
featuresRepositories指定在启动时要加载的feature repository;
featuresBoot指定在启动时要安装的feature.
发表评论
-
使用Maven构建JBI组件
2012-08-29 18:06 12441. 配置POM文件 <pluginR ... -
JBI及相关组件理论
2012-08-28 12:42 11291. Java Business Integration(JB ... -
部署JBI组件至Fuse ESB Enterprise Runtime
2012-08-28 10:20 1363JBI Endpoint Cluster ... -
OSGi容器中Bundle之间Asynchronous Communication
2012-07-20 09:41 1669Fuse ESB Enterprise Contai ... -
OSGi容器中Bundle之间Synchronous Communication
2012-07-14 11:25 1310OSGi Core定义了一个服务层,提供了一个Bund ... -
Fuse ESB Enterprise之OSGi Bunbdle部署模型
2012-07-12 09:49 17481. Building an OSGi Bundle ... -
Fuse ESB Enterprise之WAR部署模型
2012-07-12 09:48 13251. Build a WAR Modifying ... -
Fuse ESB Enterprise之FAB部署模型
2012-07-11 08:13 1682FAB Project是以pom.xml配置文件为主进行该JA ... -
FuseESB Enterprise 系统配置
2012-05-22 15:42 1757Fuse ESB Enterprise 使用Felix 实现的 ... -
FuseESB Enterprise Runtime 配置
2012-05-19 16:46 14090. FuseESB作为系统服务 (1) Ge ... -
FuseESB Enterprise Routing and Integration理论
2012-05-19 12:49 1084Fuse ESB Enterprise的内嵌的routing ... -
FuseESB Enterprise Messaging理论
2012-05-18 15:11 10381. The Embedded Messaging Servi ... -
ServiceMix中部署:WebService和OSGi Service
2012-02-04 22:47 1384部署Web Service 1. 2. 部署OSGi ... -
ServiceMix中部署:JAR和WAR
2012-02-04 14:34 1752部署JAR: 1. Transform a non-OSGi ... -
Maven管理ServiceMix工程
2012-02-03 20:50 15351. 添加fusersource respository至se ... -
FuseESB Enterprise理论及架构思想
2012-01-31 12:01 1231官方对FuseESB的定义: Fuse ESB is an ... -
FuseESB Enterprise/ServiceMix安装配置
2012-01-31 10:45 2637ServiceMix安装配置: 1. 安装准备 a ...
相关推荐
Apache ServiceMix Specs :: JAXP API 1.3
OSGI技术的核心是Bundle,即模块化组件,它可以实现应用的动态热部署、更新和卸载,而无需重启整个系统。OSGI规范定义了一个标准化的运行时环境,使开发者能够创建模块化的Java应用程序和服务。 OSGI in Action是一...
在实际使用中,需要编写Camel的XML或者Java DSL配置,定义路由规则,然后部署到ServiceMix中。此外,对于CXF的配置,可能涉及到服务端点(Endpoint)、服务接口和服务实现的定义,以及WSDL的生成和发布。 总的来说...
Apache ServiceMix 是一个基于 OSGi 的企业级服务混合体,它整合了多个开源组件,如 Spring、CXF、Camel 等,提供了一个灵活的平台来构建和部署分布式应用程序。Spring JDBC 是 Spring 框架的一部分,专门用于简化 ...
将生成的Java类和Spring配置文件打包成一个OSGi Bundle,然后通过Servicemix的管理界面或命令行工具将其部署到Servicemix中。 5. **测试服务代理**: 一旦部署完成,你可以通过Servicemix的NMRI( Naming and ...
Apache ServiceMix 是一个全面的企业级服务导向架构(SOA)平台,它基于Java语言和OSGi规范。这个压缩包“org.apache.servicemix.bundles.spring-jdbc-4.0.2.RELEASE_1.zip”包含的是Apache ServiceMix集成的Spring ...
ServiceMix利用OSGi的这种特性,使得服务的部署、管理和升级变得更加简单和灵活。 Java是ServiceMix的基础语言,它支持各种Java EE规范,如JMS(Java消息服务)、JAX-RS(Java API for RESTful Web Services)等。...
根据给定的信息,“蓝眼睛ServiceMix教程”主要围绕ServiceMix这一技术进行介绍,涉及其安装配置、基础概念以及如何在企业环境中应用等方面。下面将基于这些内容,详细展开相关知识点。 ### ServiceMix简介 ...
8,创建一个名为testfile.xml的蓝图文件并放入servicmix的deploy文件夹中,这将在servicemix目录中创建camel / input文件夹 9.将文件从deploy文件夹复制到camel / input文件夹。 该文件将自动移动到输出文件夹 10. ...
Apache ServiceMix是基于Java Business Integration(JBI)规范的企业服务总线(ESB)实现,它提供了构建和部署服务组合的强大平台,支持多种协议和服务类型,如SOAP、JMS、HTTP等。ServiceMix的设计原则之一是其...
ServiceMix是一个灵活且强大的ESB,允许开发者构建和部署分布式系统,通过统一的接口连接各种不同的业务组件。快速入门指南的目标是引导新用户完成从安装到初步使用的全过程。 2. **安装** - **系统要求**:确保...
3. **CXF与Servicemix的结合**:CXF是一个流行的开放源码服务框架,用于构建和部署Web服务。在Servicemix中,CXF被用作SOAP服务的基础,它能生成Web服务客户端和服务器端的代码,支持WSDL第一和第二类服务。`cxf-...
ServiceMix允许用户将各种服务打包成OSGi bundle,然后部署到ServiceMix容器中。这些服务可以是自定义的Java代码、Web服务、EJB或其他支持的组件。运行时,ServiceMix会管理这些服务的生命周期,确保它们的正确启动...
创建3个表示形式: 包含文档webapp的战争文件pdf文件(位于target/sitegen/manual.pdf ) 使用相同模板(位于target/sitegen )生成的静态网站将文档发布到网站如果您是Apache ServiceMix提交者,则可以使用以下命令
3. **部署到ServiceMix**:使用ServiceMix提供的部署工具或命令行界面,将编译后的服务组件部署到ServiceMix容器中。这通常涉及到创建一个或多个karaf特征(features)或者bundle来包装你的服务。 4. **配置路由**:...
1.Servicemix环境安装和配置 2.Eclipse开发环境安装搭建 3.用Bundle对应用组件模块化 4.Camel的应用和例子 Bundle之间的消息传递, Errorhandling 负载均衡 。。。。。。 5.Camel利用ActiveMQ来实现对消息的机制...
这些路由可以通过ServiceMix的管理工具部署,或者作为bundle(OSGi模块)上传。 5. **测试和调试**: - 一旦路由部署,可以通过发送请求到定义的输入端点来测试路由是否正常工作。ServiceMix提供了日志记录和跟踪...
通过执行特定的Maven目标,如`mvn servicemix:install`,可以将项目安装到ServiceMix中。 **8. 源码分析** 文章链接中的"CodeFirst"可能是指一种开发模式,即代码优先,意味着开发者先编写业务代码,然后由Maven...
在提供的“serviceMix大合集”中,你可能会找到关于如何设置和配置ServiceMix、如何创建和部署服务、如何利用Camel和CXF组件进行集成、以及如何管理和监控ServiceMix实例的详细文档。这些资料对于学习和使用...