我目前正在为内部开发的大量 Web 应用程序开发翻译服务。我面临的问题是,我们将所有应用程序与包含不同语言的属性文件打包在一起以获得 i18n 支持。
在头脑风暴会议期间提出的建议之一是让翻译服务成为 OSGi 模块。问题是我对 OSGi 的经验是 0 并且不知道如何去做。进一步的讨论和谷歌搜索建议将服务开发为 WAB。
我面临的问题是如何从 WAB 调用资源?有可能还是我走错了路?
任何帮助都会得到很大的帮助。
问候 S。
我目前正在为内部开发的大量 Web 应用程序开发翻译服务。我面临的问题是,我们将所有应用程序与包含不同语言的属性文件打包在一起以获得 i18n 支持。
在头脑风暴会议期间提出的建议之一是让翻译服务成为 OSGi 模块。问题是我对 OSGi 的经验是 0 并且不知道如何去做。进一步的讨论和谷歌搜索建议将服务开发为 WAB。
我面临的问题是如何从 WAB 调用资源?有可能还是我走错了路?
任何帮助都会得到很大的帮助。
问候 S。
如果不了解更多细节,很难确定,但您可能想要使用 wab 而不是战争,而不是战争内部。wab 只是与 osgi 元数据的战争。一种很好的国际化方法(以及这个想法出现的原因,我猜)是对资源包使用片段。这篇文章有一个开发wab然后为国际化添加片段的教程。
我还建议不要尝试直接从 osgi 包中加载资源,因为 osgi 封装通常会使资源无法访问,除非您对包导入和导出做了丑陋的事情。相反,查找服务并让它进行资源加载。使用声明式服务或蓝图之类的东西比程序化服务访问要容易得多。
除非您特别需要在运行时重新部署翻译服务,否则我建议您将其打包为 jar 并将其包含在每个 Web 应用程序中。如果你使用的是 Maven 之类的,更新服务只是增加依赖的版本号,重建和重新部署战争的情况。