- 专家问诊,提供专业建议
- 急速响应,体验省心
- 根据需求灵活定制解决方案
osgi 开发web应用怎么做?
标签:osgi 开发web应用 2017-8-17 作者:open_tq54_niwe
使用OSGI框架进行web开发有两种方式,一种是将web容器置于OSGI框架下,一种方式是将OSGI框架置于web容器下。在此我们对两种方式进行介绍。
第一种方式,是将web容器置于OSGI框架下进行web应用的开放。将web容器置于OSGI框架下的方式,就是将web容器做成OSGI支持的Bundle,在安装到OSGI框架中,目前我们用到的是Jetty组件。下面开始介绍这种方式下的web开发
首先创建一个Eclipse插件项目,跟上面Helloworld例子的步骤一样,创建一个名字为“com.centfor.osgi.web”的插件。然后在此插件下创建一个WebRoot文件夹,里面创建两个文件夹一个是img,一个是jsp,里面分别放置一个图片文件,一个简单jsp文件。大致结构如下图所示:
Index.jsp 文件内容很简单,只是在页面上显示“My Jsp Page Started...”以及一个图片,
下一步,我们打开MANIFEST.MF文件将要使用到的组件以及包进行引入,
主要引入的插件有
org.eclipse.equinox.http.registry, (用于注册web资源)
org.eclipse.equinox.jsp.jasper.registry, (用于注册jsp资源)
Org.eclipse.equinox.http.jetty (web容器jetty组件)
引入的包有
Javax.servlet (开发servlet要使用到的两个包)
Javax.servlet.http
将所需要的插件以及包引入之后,开始创建我们的第一个servlet,一个位于“com.centfor.osgi.web.servlet”包下的“MyServlet”类。代码大致如下:
只是在doGet方法中,输出了一行字符“My servlet ......”
创建完毕,我们开始资源映射的配置,因为如果要通过web容器Jetty访问我们的web资源,必须要告诉OSGI框架,哪些资源可以访问,访问的规则是什么。打开“plugin.xml”文件,输入类似于下图的内容:
到此,我们的简单web应用开发完成,下面开始运行。
右键单击我们的web项目,选择“Run as。。”跟上面的操作一样,在弹出的对话框中设置OSGI Configuration并让其自动选择所需要的所有插件,点击运行。在控制台中输入“ss”控制台显示我们所使用到的组件状态都是“Active”。如下图:
此时打开浏览器,访问我们刚才映射的jsp以及servlet。看到如下图所示结果:
Index.jsp的访问结果:
Myservlet访问结果:
第二种方式,就是将OSGI框架置于Web容器下来运行我们的Web程序。这里我们使用到得web容器为tomcat6.0,另外为了能在web容器下运行OSGI框架以及基于OSGI框架的Web应用,我们需要一个OSGI框架与WEB容器的一个bridge war(可到eclipse官网下载,下载地址为//www.eclipse.org/equinox/server/downloads/bridge.war),这个war的作用就是起到web容器与OSGI框架的整合作用。
首先下载bridge war至本地,并将其放置到tomcat的webapps目录下。启动tomcat,tomcat会自动将这个war文件解压安装。
将我们的web组件给导出成一个eclipse的插件文件,也就是一个jar文件,具体导出步骤如下:
首先点击“build.properties”文件,在左侧的Binary Build中选择要导出的文件,如下图所示:
将我们的 WebRoot文件夹也选定
右键点击我们的工程,选择“Export...”在弹出的对话框中选中“Plug-in Development->Deployable plug-ins and fragments”,点击“next”如下图所示:
进入另一个界面,作出如下图的选择
点击完成,桌面上就出现了一个 com.centfor.osgi.web.zip的文件,打开此文件,其目录结果大致为:
Plugins->com.centfor.osgi.web_1.0.0.200911111125.jar
将com.centfor.osgi.web_1.0.0.200911111125.jar文件解压出来。
接下来我们来看一下bridge war的目录结构,大致如下图:
我们将我们的"com.centfor.osgi.web_1.0.0.200911111125.jar"文件,放置到bridge下的plugins目录下,启动tomcat,我们会发现tomcat下有一个OSGI的提示符"osgi>"
在tomcat控制台中输入"ss"命令,可以看到我们的web组件已经启动成功,如下图所示:
此时打开浏览器,输入类似于以下的路径,来访问我们的jsp和servlet查看运行结果
上面就是小编为大家整理的关于osgi 开发web应用的文章,希望对大家有帮助。在实际的操作过程中大家可以根据实际情况进行灵活的调整。了解更多咨询请关注猪八戒网。
软件开发暂无最新文章查看全部推荐文章>
推荐人才
免责声明:
网站文章均由网站用户自行通过本网站系统平台投稿编辑整理发布,仅供学习与参考, 不代表本网站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系我们,我们将及时删除。











渝公网安备50019002500154号
