0

我对企业技术和 Web 开发非常陌生,我目前的项目让我陷入了困境。我正在使用 OSGI 并尝试使用 HelpGUI我之前的 OSGI 问题,但我无法获得第 3 方库来显示来自 Java 的 html 文件。相反,我可以使用 OSGI 或其他库在本地托管这些 html 文件吗?然后我可以使用 Java 弹出一个浏览器,该浏览器指向本地主机上的 index.html 对吗?

让我知道我的思路是否合理。我用谷歌搜索了教程,但它们让我走上了我认为过于复杂的路径,或者没有让我的 html 文件可供浏览器使用。有人可以让我朝着正确的方向前进吗?

4

1 回答 1

2

有一种简单的方法可以做到这一点。

您需要在 OSGi 中托管 html 文件并通过 HTTP 发布它们。

  1. 托管 一种选择(可能是最简单的一种)是将它们打包到捆绑包的 jar 中。

  2. 通过 HTTP 发布

OSGi 规范包括一个小型嵌入式 Web 服务器和一个用于在其中发布内容的 API。您需要使用的相关服务称为 HttpService。检查 OSGi 规范或 HTTPService 的 javadoc 以了解如何使用它。您可以发布 servlet 或普通资源 - 对于您的情况,后者就足够了。您必须提供一个简短的 HttpContext 类,它知道如何找到您的 html 文件 - 例如通过使用

公共 URL getResource(String name) { return (getClass().getResource(name)); }

您可以查看ProSyst 的 mBedded Server中提供的 HTTP 演示- 它完全符合您的需要。

请注意,在某些 OSGi 框架中,默认情况下可能不会安装 HTTP 服务 - 检查安装中可用的附加包以及是否必须安装 smth 附加以使其在 OSGi 注册表中可用。

于 2012-08-02T08:24:55.837 回答