gpt4 book ai didi

java - 在 Eclipse RCP 应用程序中动态加载 Web 服务包

转载 作者:行者123 更新时间:2023-11-29 05:38:05 25 4
gpt4 key购买 nike

这是我想要做的:我有一个服务器和一个客户端应用程序,它们通过网络服务 (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。我不会立即需要网络服务,并且无论如何都必须处理丢失的网络服务。所以我希望我的 UI 显示出来,然后在 Web 服务可用时激活功能。

所以我的问题是:

  1. 这种方法有意义吗?
  2. 我该如何实现?我想我必须从正在运行的应用程序启动 cxf 包?

最佳答案

你可以使用这样的方式启动一个插件(bundle):

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
}
}
}

关于java - 在 Eclipse RCP 应用程序中动态加载 Web 服务包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18721912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com