[英]Dynamically load Webservice bundle in Eclipse RCP application
我要做的是:我有一个通过Web服务(SOAP)进行通信的服务器和客户端应用程序。
客户端是一个Eclipse RCP应用程序,它使用来自Apache CXF的DOSIG捆绑软件。 如本教程所述,我已经使用了声明式服务和BundleActivator: http : //cxf.apache.org/dosgi-ds-demo-page.html
通过为Apache CXF捆绑软件添加自动启动条目,使客户端与服务器连接。 问题在于,这会大大降低启动速度,因为Apache CXF需要一些时间来设置服务和所有内容。 只有在完全启动Apache CXF捆绑软件后,我的UI才会显示。
我想在Apache CXF捆绑包启动完成之前显示UI。 我将不需要立即使用Web服务,并且无论如何都必须处理丢失的Web服务。 因此,我希望我的UI出现,然后在Web服务可用时激活功能。
所以我的问题是:
您可以使用以下方式启动插件(捆绑包):
final Bundle bundle = Platform.getBundle(id);
if (bundle != null)
{
if ((bundle.getState() & Bundle.ACTIVE) == 0)
{
try
{
bundle.start(Bundle.START_TRANSIENT);
}
catch (final BundleException ex)
{
// Handle error
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.