OSGi原理与最佳实践学习笔记——web应用开发环境搭建

OSGi开发web应用有两种选择:

1.在OSGi框架中嵌入http server

2.在Servlet容器中嵌入OSGi 框架

我们通过一个具体的实例来学习开发一个基于web引用的字典服务程序,这个实例分为四个bundle

1.字典查询响应Bundle(引用了其它bundle的package和其它bundle的服务)

用来提供输入要查询单词的页面,接受用户的查询请求,调用字典服务的service,将查询结果返回到页面。

2.字典查询接口Bundle(提供接口给其它的bundle使用)

对外提供字典查询接口

3.本地字典服务Bundle(提供服务给其它bundle使用)

提供字典查询服务,从本地服务器字典中查询结果

4.远程字典服务Bundle(提供服务给其它bundle使用)

提供字典查询服务,从远程服务器字典中查询结果

一、建立OSGiweb开发环境:

点run--->run configurations..., 新建OSGi FrameWork,如下图所示。

点击run,可以看到osgi> 如果没有错误提示,表示环境已经建立成功.如果出现Address already in use:JVM_Bind,则说明80端口已经被占用,需要在Arguments标签页修改参数如下:

 

-Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx512m -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dorg.osgi.service.http.port=8080

需要启动的服务有:

id    State       Bundle
0    ACTIVE      org.eclipse.osgi_3.10.2.v20150203-1939
1    ACTIVE      org.eclipse.equinox.http.jetty_3.0.200.v20131021-1843
2    ACTIVE      org.eclipse.jetty.continuation_8.1.16.v20140903
3    ACTIVE      org.apache.commons.logging_1.1.1.v201101211721
4    ACTIVE      org.eclipse.osgi.services_3.4.0.v20140312-2051
5    ACTIVE      org.eclipse.jetty.util_8.1.16.v20140903
6    ACTIVE      org.eclipse.jetty.security_8.1.16.v20140903
7    ACTIVE      org.apache.felix.gogo.command_0.10.0.v201209301215
8    ACTIVE      org.eclipse.jetty.http_8.1.16.v20140903
9    ACTIVE      org.eclipse.equinox.console_1.1.0.v20140131-1639
10    ACTIVE      javax.servlet_3.0.0.v201112011016
11    ACTIVE      org.apache.felix.gogo.runtime_0.10.0.v201209301036
12    ACTIVE      org.apache.felix.gogo.shell_0.10.0.v201212101605
13    ACTIVE      org.eclipse.jetty.io_8.1.16.v20140903
14    ACTIVE      org.eclipse.jetty.server_8.1.16.v20140903
15    ACTIVE      org.eclipse.jetty.servlet_8.1.16.v20140903
16    ACTIVE      org.eclipse.equinox.http.servlet_1.1.500.v20140318-1755

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值