瓦丁资源是';在OSGI中加载t

瓦丁资源是';在OSGI中加载t,osgi,vaadin,Osgi,Vaadin,我用Maven+BND创建了一组bundle。其中一个包包含我的Vaadin“应用程序”,其他包包含一些实用程序和附加编辑器 我可以在Tomat服务器上运行此应用程序-一切正常。然后我尝试在OSGI(ApacheFelix)中运行。在解决了许多问题之后,我终于成功地运行了OSGI运行时,并正确地加载和激活了所有捆绑包。 我甚至可以使用“localhost:8080/bat”访问第一页,它不再显示“404未找到” 问题是:起始页仅显示我的应用程序中的一些未格式化文本 应用程序无法加载其Vaadin

我用Maven+BND创建了一组bundle。其中一个包包含我的Vaadin“应用程序”,其他包包含一些实用程序和附加编辑器

我可以在Tomat服务器上运行此应用程序-一切正常。然后我尝试在OSGI(ApacheFelix)中运行。在解决了许多问题之后,我终于成功地运行了OSGI运行时,并正确地加载和激活了所有捆绑包。 我甚至可以使用“localhost:8080/bat”访问第一页,它不再显示“404未找到”

问题是:起始页仅显示我的应用程序中的一些未格式化文本

应用程序无法加载其Vaadin资源(CSS,可能是widgetset等)。 调试框架显示:

Starting Vaadin client side engine. Widgetset: com.vaadin.terminal.gwt.DefaultWidgetSet
Widget set is built on version: 6.6.6
Warning: widgetset version 6.6.6 does not seem to match theme version
Starting application bat-97301
Vaadin application servlet version: 6.6.6
Application version: 0.0.1
inserting load indicator
Making UIDL Request with params: init
Server visit took 9ms
...
Assuming CSS loading is not complete, postponing render phase. (.v-loading-indicator height == 0)
Assuming CSS loading is not complete, postponing render phase. (.v-loading-indicator height == 0)
....
CSS files may have not loaded properly.
看起来无法加载Vaadin资源

所以,问题是: 对于打包为OSGI包的Vaadin应用程序来说,什么是合适的结构

以下是我的OSGI捆绑包结构(使用Maven+BND创建): (由于不重要,我跳过了一些瓦丁驯鹿主题文件夹)


我最近刚做了这个练习。通过谷歌搜索vaadin和OSGi发现,在如何集成以及在哪个级别上集成(例如组件或应用程序)有不同的要求。然而,关键的“实现点”是,您必须对其进行安排,以便可以从客户端访问VAADIN资源,即可以从“servlet”作为资源使用。我认为bundle结构本身对您没有帮助,您必须处理Http服务,并给出如何为其提供服务的说明

看看neil bartlett在上的vaadin示例,特别是vaadinbridge项目。这有助于我理解这些问题


另一种方法可能是在OSGi continer上部署捆绑包,它可以理解战争,比如Virgo。但这只是一个猜测。

我发现的一个[黑客风格]临时解决方案是:将您与Vaadin资源的捆绑声明为:'Fragment Host:com.Vaadin;bundle version=“6.6.6””但这显然不是一个好的解决方案。
├───com
│   └───my
│       ├───demomodules
│       ├───preferences
│       ├───widgetset
│       └───workspaces
├───META-INF
├───VAADIN
│   ├───icons
│   ├───themes
│   │   ├───mytheme
│   │   └───reindeer
│   │       ├───a-sprite-definitions
│   └───widgetsets
│       ├───com.my.widgetset.Vaadin1Widgetset
│       │   └───ie6pngfix
│       └───WEB-INF
│           └───deploy
│               └───com.my.widgetset.Vaadin1Widgetset
│                   ├───rpcPolicyManifest
│                   └───symbolMaps
└───WEB-INF