osgi java web_在Tomcat中使用Java Web应用程序的OSGi软件包
我试图从Java Web应用程序调用OSGi包的方法.两者都应该在Tomcat 7上运行.
我已经写了一个正常的Java应用程序,它调用OSGi软件包中的方法,如本站所述:http://drupal.osgibook.org/node/37.
为了获得Equinox环境的上下文,我从应用程序启动它,并从里面安装了bundle.此外,上下文用于检索运行的bundle的服务引用并获取其服务.
EquinoxRunner类的runEquinox方法:
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;
public BundleContext runEquinox([...]) throws Exception {
[...]
BundleContext bundleContext = EclipseStarter.startup(new String[]{"-console"}, null);
bundleContext.installBundle("file:C:/.../plugins/myosgiclass.interface_1.0.0.201108301327.jar");
Bundle bundleTranslationImpl = bundleContext.installBundle("file:C:/.../plugins/myosgiclass.impl_1.0.0.201108301327.jar");
bundleTranslationImpl.start();
[...]
return bundleContext;
}
和ServiceRunner类的invokeMethod:
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceReference;
[...]
public Object invokeMethod(BundleContext bundleContext, Object value, [...]){
ServiceReference serviceReference = bundleContext.getServiceReference(MyOSGiClass.class.getName());
Object result = null;
if (serviceReference != null) {
MyOSGiClass myOSGiClass = (MyOSGiClass) bundleContext.getService(serviceReference);
if (myOSGiClass != null) result = myOSGiClass.method(value);
bundleContext.ungetService(serviceReference);
}
return result;
}
现在,在Tomcat上使用eclipse bridge,我不知道如何检索Equinox环境的正确上下文.当我尝试运行它在Tomcat与Equinox我得到NoClassDefFound异常.我会感谢任何关于如何解决这个问题的建议.
非常感谢.
干杯,尼克
osgi java web_在Tomcat中使用Java Web应用程序的OSGi软件包相关推荐
- java osgi web开发_在Tomcat中使用Java Web应用程序的OSGi软件包
我试图从Java Web应用程序调用OSGi包的方法.两者都应该在Tomcat 7上运行. 我已经写了一个正常的Java应用程序,它调用OSGi软件包中的方法,如本站所述:http://drupal. ...
- 在Tomcat中部署Java Web应用程序几种方式
在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署.在下文中$CATALINA_HOME指的是Tomcat根目录. 一.静态部署 静态部署指的是我们在服务器启动之 ...
- 【转】Tomcat中部署java web应用程序
http://www.blogjava.net/jiafang83/archive/2009/06/02/279644.html 转载: 今天给大家介绍怎样在Tomcat5.5.9中部署Java We ...
- 在 Tomcat 中部署 Java Web 程序 ( jar cvf *.war */. ) war 包
本文基本转自:http://www.blogjava.net/ocean07000814/articles/331694.html 主要讲的是在 Tomcat 中部署 Java Web 应用程序.因为 ...
- Java 类在 Tomcat 中是如何加载的?
说到本篇的Tomcat类加载机制,不得不说翻译学习Tomcat的初衷. 之前实习的时候学习JavaMelody的源码,但是它是一个Maven的项目,与我们自己的Web项目整合后无法直接断点调试. 后来 ...
- 多项目加载顺序修改_面试官:Java 类在 Tomcat 中是如何加载的?
说到本篇的Tomcat类加载机制,不得不说翻译学习Tomcat的初衷. 之前实习的时候学习JavaMelody的源码,但是它是一个Maven的项目,与我们自己的Web项目整合后无法直接断点调试. 后来 ...
- endorsed java_使用Java 9和Java 10在Eclipse上从Tomcat中删除java.endorsed.dirs
我在IDE中将Eclipse 4.7.3a与Tomcat 9.0.4结合使用.我从Java 8升级到Java10.我更改JAVA_HOME为指向JDK 10安装.我进入Eclipse,并创建了一个新的 ...
- tomcat 中部署java web项目
1.静态部署(服务器启动之前部署) a.将项目放在webapps下,就可以了 b.更改$CATALINA_HOME\conf\server.xml文件,在<host>标签内添加<Co ...
- java面试题8 牛客:在Web应用程序中,( )负责将HTTP请求转换为HttpServletRequest对象
在Web应用程序中,( )负责将HTTP请求转换为HttpServletRequest对象 A Servlet对象 B HTTP服务器 C Web容器 D JSP网页 首先我们来看看web程序的 ...
- linux搭建java开发环境_linux中搭建java开发环境
今天试着在Linux下面搭建java开发环境,现总结一下具体步骤. 1.JDK的安装1.6 版本 cd /opt mkdir java 执行下面命令安装JDK(首先创建/opt/java目录) tar ...
最新文章
- 微信小程序框架封装登录,网络请求等公共模块及调用示例
- Android输入系统(三)InputReader的加工类型和InputDispatcher的分发过程
- Null return value from advice does not match primitive return type for: public abstract boolean
- 【深度学习】你有哪些深度学习(RNN、CNN)调参的经验?
- 更新:让UpdatePanel支持上传文件
- B站这套教程火了,火速搬运!限时删除~
- Office编程(二)C#读取Excel并存入数据库,通过XML自定义表名,是否重建并插入数据...
- 网关在链路上什么意思_银行卡上的数字都什么意思
- 巧用FineReport搭建成本管控监测系统
- UIWebView背景透明的方法
- BackTrack 4 R2 发布
- access ea 可以联网吗_如何看待EA在STEAM上推出EA Play(原EA Access会员)?
- python开源bi_开源bi软件排名哪些最为靠谱
- java实现微信订阅消息(服务通知)
- 永恒之蓝--Windows7
- 如何在 LaTeX 中画一个树状图(使用tikz和tikz-qtree包中的宏绘制树、森林、二叉树)
- 数据脱敏(Data Masking)- 模块功能设计
- Http? Https?
- Java implement意思_详解JAVA中implement和extends的区别
- 数据库-差集交集并集