2013-05-30 66 views
0

我目前使用vaadin 6與OSGi。是否可以更改VAADIN中默認主題文件夾的位置?

我想創建一個新主題,但由於我使用的是OSGi,我無法在VAADIN /主題文件夾下添加一個主題,因爲我無法訪問它。

我想告訴vaadin在我的HTTP命名空間中使用另一個URL來查找我的主題。

我可以做到這一點嗎? setTheme()方法只接受字符串,如果可以爲主題註冊另一個默認文件夾,則無法在任何地方找到。

謝謝

回答

2

您可以通過在碎片捆綁包中創建主題並將其附加到Vaadin捆綁包來實現此目的。這實際上將資源合併/附加到主機捆綁。 所以你提供:

VAADIN/themes/mytheme/

在你的片段捆綁

,並創建清單與

Fragment-Host

設置爲

Vaadin 6:com.vaadin;bundle-version="${vaadin.version}"

Vaadin 7: com.vaadin.client-compiled;bundle-version="${vaadin.version}"

+0

謝謝!有用! – Marius

1

不,這是不可能的。

從這裏:https://vaadin.com/de/book/vaadin6/-/page/themes.creating.html

自定義主題被放置在Web應用程序(在WebContent目錄)的VAADIN /主題的文件夾,如圖8.1所示,「一個主題的內容」。 這個位置是固定的。您需要爲應用程序中使用的每個主題設置一個主題文件夾,儘管應用程序很少需要多個主題。例如,如果要定義名稱爲mytheme的主題,則將它放在VAADIN/themes/mytheme文件夾中。

1

您也可以嘗試vaadin的pax,它尚未發佈,我正在花一些時間去處理它,但它應該適用於您的用例。它試圖在捆綁包中找到vaadin應用程序和主題。

https://ops4j1.jira.com/wiki/display/PAXVAADIN/Home

+0

謝謝!當我有更多時間時,我會在幾周內檢查一下。片段捆綁解決方案的作品,我渴望進一步移動。 – Marius

相關問題