将Eclipse RAP部署到Tomcat中

在上次成功将我的RCP项目迁移到浏览器中运行后,开始研究怎样将它部署到Tomcat中,说实话,到目前为止,这方面的资料很少,在Eclipse RAP的新闻组上关于这方面的讨论也不是很多。RAP的帮助系统中的介绍文章好像也不是很详细(好像有点过时)
     这里我们简单介绍一下部署Eclipse RAP 自带的RAP例子,如果安装了Eclipse RAP,打开帮助界面,找到RAP帮助文档中的“How to deploy a RAP application to a servlet container?“ 这篇文章,文章中提供了一个链接方式,可以下载一个psf,这是Eclipse的工程集文件,文件内容如下: 

Java代码   收藏代码
  1. <?xml version= "1.0"  encoding= "UTF-8" ?>  
  2. <psf version="2.0" >  
  3. <provider id="org.eclipse.team.cvs.core.cvsnature" >  
  4. <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/rt,org.eclipse.equinox/server-side/bundles/org.eclipse.equinox.http.servletbridge,org.eclipse.equinox.http.servletbridge" />  
  5. <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/rt,org.eclipse.equinox/server-side/bundles/org.eclipse.equinox.servletbridge,org.eclipse.equinox.servletbridge" />  
  6. <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/rt,org.eclipse.rap/releng/org.eclipse.rap.demo.feature,org.eclipse.rap.demo.feature" />  
  7. </provider>  
  8. </psf>  


你也可以将内容复制到文本文件然后改成 yourpsffile.psf 文件,将它作为Eclipse的工程集导入到Eclipse中,Eclipse就会自动从Eclipse的CVS网站上下载对应的插件,总共有三个插件被下载下来:

org.eclipse.equinox.http.servletbridge
org.eclipse.equinox.servletbridge  
org.eclipse.rap.demo.feature

Java代码   收藏代码
  1. 打开org.eclipse.rap.demo.feature工程的script文件夹下的webappBuilder.xml文件,修改属性名为”servletbridge.dir“的属性值(好像在 18 行),将值修改为你的”org.eclipse.equinox.servletbridge“工程的路径,推荐使用绝对路径,比如:  

 

Java代码   收藏代码
  1. <property name= "servletbridge.dir"   
  2.       value="D:/DeveloperWorks/Eclipse-3.5-RAP-SRC/org.eclipse.equinox.servletbridge"  />  


然后直接使用Ant运行编译,运行后会在插件的build文件夹下面生成可部署的文件。


打开生成的web.xml 文件,将已经被注释的下面内容

Java代码   收藏代码
  1. <!--  
  2.     <init-param>  
  3.         <param-name>commandline</param-name>  
  4.     <param-value>-console</param-value>  
  5.     </init-param>          
  6. -->  


还原成正常的代码,这样可以在Tomcat的控制台使用OSGI的控制台,方便查看和管理插件的生命周期,完成插件的更新和卸载功能,再将

Java代码   收藏代码
  1. <init-param>  
  2.     <param-name>enableFrameworkControls</param-name>  
  3.     <param-value>false </param-value>      
  4. </init-param>  


中的参数值由false改成true,这样可以启动对OSGI框架的控制,方便调试。

  运行工程下面的ConfigIniCreator.java,(应该在39行)将指定plugins目录的路径修改为你本机的绝对路径,比如我的工程的路径是:

Java代码   收藏代码
  1. File file =  new  File(  "D:\\DeveloperWorks\\Eclipse-3.4-RAP\\org.eclipse.rap.demo.feature\\build\\demo\\WEB-INF\\eclipse\\plugins"  );  


运行后将打印的结果替换\org.eclipse.rap.demo.feature\build\demo\WEB-INF\eclipse\configuration目录的config.ini文件内容。

接    接着将org.eclipse.rap.demo.feature工程下面的build文件夹下的demo文件夹下面的内容复制到Tomcat的webapps目录下,启动Tomcat,启动后可在控制台输入 ”ss" 查看OSGI框架下已经被加载的插件:


可以看到我们部署的org.eclipse.rap.demo文件已经处于激活状态了。

打    打开浏览器,输入 http://localhost:8080/demo/rap 就可以进行访问了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值