Java-OSGI
文章平均质量分 80
lvk618
记录与分享是一件很高兴的事情,分享促进总体提升
展开
-
Apache Camel http4 blueprint
Apache Camel http4 blueprint原创 2015-12-13 14:29:27 · 1882 阅读 · 0 评论 -
OSGI系列 xfire调用WebService
一、xfire普通调用1、需要引用如图的包2、调用public static String soapUrl = "http://192.168.1.66:9001/services/WebServiceSingleQuery?wsdl"; private static String userName = "query"; private static S原创 2015-12-26 11:04:31 · 985 阅读 · 0 评论 -
CXF开发服务端(Server)和客户端(Client)
开发之前需要应用需要包 org.apache.cxf cxf-api 2.5.0 org.apache.cxf cxf-rt-frontend-jaxws 2.5.0 org.apache.cxf cxf-rt-bindings-soap 2.5.0 org.apache.cxf cxf-rt原创 2015-12-26 11:13:44 · 838 阅读 · 0 评论 -
Eclipse中配置ServiceMix的远程调试模式
需要在启动Servicemix前把Servicemix的debug环境变量设置为true(即允许远程调试),Servicemix3.x中这个变量名为SERVICEMIX_DEBUG,servicemix4.x中这个变量名为KARAF_DEBUG:- export SERVICEMIX_DEBUG=true (on Linux, Solaris)- set SERVICEMIX_DEBUG=原创 2015-12-26 11:17:49 · 2018 阅读 · 0 评论 -
OSGI 模块化 POM设计
为了模块化开发的规范性,下面列出了一般的模块化分块,以后可以以此进行模块化构建项目。一、父亲POM <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:原创 2015-12-26 12:02:17 · 958 阅读 · 0 评论 -
Apache Felix Event Admin在ServiceMix容器下使用
1、首先在pom文件中引用org.osgiorg.osgi.service.event1.3.1jar2、在blueprint文件下引入Event服务,才可以将消息推送到Event里面3、将服务注入到Bean里面使用public class EventAdminUtils{ private EventAdmin eventAdmin; pub原创 2016-03-05 14:44:16 · 997 阅读 · 0 评论 -
OSGI动态注册和创建服务
1、需要引入 org.osgi org.osgi 3.0.0 2、创建一个工厂类实现接口ManagedServiceFactorypublic class WserviceFactory implements ManagedServiceFactory { private static原创 2016-03-05 14:51:34 · 2979 阅读 · 0 评论 -
Camel-Component组件总结
了解OSGI领域的都知道,osgi的路由很强大,然而在路由的背后,有几个组件是非常重要的。S1.SEDA ComponentThe seda: component provides asynchronous SEDA behavior, so that messages are exchanged on a BlockingQueue and consume原创 2016-04-09 13:07:43 · 2226 阅读 · 0 评论 -
Camel Splitter分配器以及Aggregate聚合器使用实例
作用:splite分批 aggregate聚合 单线程处理通过splite变成多线程并行处理。使用场景:一个消息如果它包含多个元素,其中每一个元素可能要以不同的方式去处理,那么我们该如何处理?分析:需要将不同类型的消息发给别的bundle去做处理,可以根据类型进行分类,然后根据不同类型聚合起来,最后再根据聚合后的对应类型去到不同的bundle做处理。 org.apache.c原创 2016-04-09 13:21:55 · 2012 阅读 · 0 评论 -
OSGI HttpServlet
HttpServlet不管在Tomcat环境中能运行,在OSGI环境下也能运行,并且用法更简单。一、首先,创建blueprint.xml<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2015-12-21 21:09:31 · 1051 阅读 · 0 评论 -
OSGI Http转发
在企业中,往往有很多的Http接口很多的服务,那就需要很多的ip地址或者域名以及端口号了,那是不现实的,就算现实了,对于运维人员和开发人员来说也是很不好的,多起来的时候,最后谁知道哪个域名哪个端口对于的是哪个服务呀,最终还是害惨了自己。所以,下面,我就介绍一个http转发的实现,我们可以监听一个端口号,对于是这个端口号的所有地址进行一个拦截,然后再统一的转发出去,这样子是不是很靠谱呀,那该如何原创 2015-12-21 20:54:16 · 921 阅读 · 0 评论 -
OSGI系列 权重分配
权重分配:开始的时候自动分配去执行某一服务,在执行的过程中,如果出现请求异常或者是程序异常,则会自动的切换另一服务或者是另一操作。如果需要在OSGI的ServiceMix中要达到如此效果,那么需要在配置文件中做到对应的配置。一、首先,我们创建一个blueprint.xml文件(当然此文件可以修改为别的名称,最好单独的提取出来),blueprint的规范就不放出来了,之前的博客里有了详细原创 2015-12-20 14:11:03 · 647 阅读 · 0 评论 -
OSGI系列 服务注册
之前一直都是在说在blueprint中怎么发布(注册)服务以及获取服务,现在就来说说怎么通过代码来发布(注册)我们的服务和获取服务的前提,需要引入咱们OSGI环境的依赖包:一、发布(注册)服务1、首先,我们来创建咱们的服务接口以及实现服务接口:IService1.java服务接口:Service1.java2、然后,写一个Activator类,该类专用来注册原创 2016-01-15 22:55:06 · 2721 阅读 · 0 评论 -
OSGI系列之mybatis
一、不在blueprint文件中进行操作mybatis (绝对路径)1、mybatis的配置文件(SqlMapConfig.xml)<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">原创 2015-12-13 15:02:49 · 3172 阅读 · 2 评论 -
OSGI系列一---环境搭建
一、OSGI是什么?面向Java的动态模型系统二、选用工具Eclipse,ServiceMix,Maven,JDK,mysql/postgresql/miraiDB,Git,Linux三、存放工程及工具的目录1.请在D盘或你喜欢的目录下建一个叫deploy的空文件夹2.除JDK和Mysql外的工具均会解压到该目录四、Java Platform (JDK)1.Ja原创 2015-12-19 21:46:21 · 977 阅读 · 0 评论 -
OSGI系列 Web-Service
一、首先创建一个父亲项目,父亲项目下面有3个儿子模块(webservice) <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.or原创 2015-12-20 12:56:56 · 3201 阅读 · 0 评论 -
OSGI系列 Servlet-Rest发布Http服务
除了WebService 和 Restful,我们还希望通过把servlet发布出去1、在blueprint.xml中定义<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"原创 2015-12-20 13:46:39 · 2042 阅读 · 0 评论 -
OSGI系列 WebService发布服务
WebService相信大家都很熟悉了,但是通过OSGI中利用Camel发布这个WebService服务给别人调用,我相信很少人知道,下面就由我来分享一下其中的原理以及实现方法。由于blueprint.xml文件是我们OSGI环境下的桥梁,所以一切入手由它开始,需要符合规范,否则此文件不会生效。一、创建一个blueprint.xml文件<blueprint xmlns="http原创 2015-12-20 13:51:57 · 3109 阅读 · 0 评论 -
OSGI系列 Restful发布服务
OSGI中bundle之间的桥梁是blueprint.xml所以,一切从blueprint开始。一、创建一个blueprint.xml文件,此文件必须符合规范<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSc原创 2015-12-20 14:00:05 · 2604 阅读 · 0 评论 -
OSGI--动态创建服务
在很多时候,我们都需要搭建一个通用的动态的平台,就是说在以后的扩展当中不需要修改任何的代码就达到动态的扩展一个功能或者是一个服务,然而在OSGI环境下很容易做到这一点,下面来说说怎么实现: org.osgi org.osgi 3.0.0 1、首先我们创建一个服务注册的类,这个类继承org.osgi.service.cm的ManagedServiceFact原创 2016-04-16 23:05:06 · 1102 阅读 · 0 评论