2013-05-28 72 views
10

我正在嘗試使用vaadin,並且想在我的vaading 7項目中使用甘特圖聊天加載項。 https://vaadin.com/directory#addon/vaadin-gantt-diagram:vaadinvaadin 7:Widgetset不包含實現

,因爲這不符合vaadin 7兼容,我試圖解決從一些代碼附加,使其與vaadin 7兼容

我從庫中檢出了vaadin-6.8的源代碼和可用下載中的vaadin-gantt(附加組件)。

我在vaadin-6.8中修改了一下代碼並構建。我在vaadin-gantt插件中使用這個定製的vaadin-6.8 jar。現在我可以通過使用定製的vaadin-6.8 jar來構建vaadin-gantt插件。我想在vaadin-7項目中使用這個附加組件。

編譯經歷了,但我得到下面的消息在控制檯上同時顯示的甘特圖

「視窗元件不包含實施ru.bazon.vaadin.ganttdiagram.canvas.GanttDiagramCanvas檢查其組件連接器的@Connect映射,widgetset GWT模塊描述文件並重新編譯你的widgetset。如果你已經下載了vaadin附加軟件包,你可能想參考附加指令。「

我編譯甘特視窗元件使用Eclipse插件,可以看到下面的條目在我的項目* .gwt.xml文件

我想利用甘特圖表添加爲vaadin-7。除了vaadin 7之外,我沒有發現任何其他的vaadin-7插件。

任何指針?

的問候,愛資哈爾

+0

你必須外接轉換對於Vaadin 7,您定製Vaadin 6.8的方法無效。 –

+0

同意亨利。 Widgetset從6.8.8到Vaadin 7發生了很多變化。更改包括使用共享狀態,客戶端和服務器RPC –

回答

5

請確保您已經添加@Widgetset( 「* .gwt.xml的路徑」)你的主UI class.I已加入該

+1

找到包含「.gwt.xml」文件的軟件包(例如:「com.mycompany.ui。 AppWidgetSet.gwt.xml「),然後將類名稱添加到註釋中去除」.gwt.xml「前綴:@Widgetset(」com.mycompany.ui.AppWidgetSet「)然後確保您也進行了Vaadin編譯。 – Glenn

3

我解決只是有這個錯誤,這是由於插件jar中缺少源文件造成的。隨着GWT從源代碼編譯,.java和.class文件必須出現在插件jar文件中。但最有可能的形式vaadin目錄的插件也應包括來源。當然,不要忘了在將插件導入到項目中之後編譯widgetset和主題。

+0

我已經搜索了兩天以上的錯誤,對於所有使用gradle的人來說:在你的Widget項目中添加以下內容到「jar」任務,用於將Java源文件與類文件一起放入jar文件中:'from sourceSets.main.allSource' – Steffen

0

剛剛也有同樣的問題,另一件事情是確保您使用vaadin的是web.xml文件中的部署資源的WEB-INF文件夾。 確保Widgetset的也進行了規定:

<init-param> 
<description>AWidgetSet</description> 
<param-name>widgetset</param-name> 
<param-value>com.example.a.widgetset.AWidgetset</param-value> 
</init-param> 
0

當使用Java配置與註釋@VaadinServletConfiguration額外的解決方案是將這個作爲註解的參數視窗元件

@VaadinServletConfiguration(ui = MyUI.class, productionMode = true, heartbeatInterval = 500, closeIdleSessions = true, widgetset = "com.myapp.MyWidgetset") 
1

就要離開這個這裏如果有人和我有同樣的情況。我們的項目在Vaadin 8,我們已經有@Widgetset("com.company.OurWidgetSet")作爲我們的UI延伸課程的註釋。

但是,在訪問分離組件的彈出窗口時,我仍然收到與OP相同的錯誤。雖然我們過去嘗試將我們的這個組件遷移到Vaadin 8,但由於沒有足夠的時間來做到這一點,它仍然主要使用Vaadin7的導入和功能。

正因爲如此,我不得不在我們的主要項目中添加下面我們OurWidgetSet.gwt.xml文件(內<module> - 標籤),固定使用的組件的功能:

<inherits name="com.vaadin.v7.Vaadin7WidgetSet" />