2012-07-23 98 views
0

我想在Jboss errai應用程序中使用DockLayoutPanel。 我的入口點類:GWT DockLayoutPanel空白頁

@EntryPoint 
public class Application { 

private Caller<UserService> userService; 

private Label registerConfirmMessage; 

@AfterInitialization 
public void createUI() { 

    DockLayoutPanel p = new DockLayoutPanel(Unit.EM); 
    p.addNorth(new HTML("header"), 2); 
    p.addSouth(new HTML("footer"), 2); 
    p.addWest(new HTML("navigation"), 10); 
    p.add(new HTML("content")); 
    RootLayoutPanel.get().add(p); 
} 

我Application.gwt.xml:

<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.4//EN" 
    "http://google-web-toolkit.googlecode.com/svn/releases/2.4/distro-source/core/src/gwt-module.dtd"> 

<!-- GWT module definition: the rename-to attribute is used to have a shorter 
module name that doesn't reflect the actual package structure. --> 
<module> 
<inherits name="org.jboss.errai.common.ErraiCommon" /> 
<inherits name="org.jboss.errai.bus.ErraiBus" /> 
<inherits name="org.jboss.errai.ioc.Container" /> 
<inherits name="org.jboss.errai.enterprise.CDI" /> 
<inherits name="org.hibernate.validator.HibernateValidator" /> 

<source path="client" /> 
<source path="shared" /> 
</module> 

我發現不同的結果,當我改變DOCTYPE。所以:

在IE6它要麼DOCTYPE工作

<!DOCTYPE HTML> 

空白頁在Mozilla Firefox 14,Chrome的

<!DOCTYPE> 

空白頁的FF14,但它在Chrome工作。

所有其他文檔類型導致空白頁。

請指正我的問題,正確解決!

回答

1

從文檔:

這個小工具只能在標準模式下,它要求在其運行的 HTML頁面有一個明確的申報工作。

這樣就意味着:

1,瀏覽器需要在標準模式下運行,而不是在怪癖模式。

2.In你的HTML文件的開頭,你應該有這樣的:

<!doctype html> 
<!-- The DOCTYPE declaration above will set the  --> 
<!-- browser's rendering engine into    --> 
<!-- "Standards Mode". Replacing this declaration --> 
<!-- with a "Quirks Mode" doctype is not supported. --> 

此外,DOCTYPE HTML頁中的應用程序啓動,其中定義。

,而不是gwt.xml

還檢查下面的鏈接,它描述了一個GWT項目的組織:

https://developers.google.com/web-toolkit/doc/latest/DevGuideOrganizingProjects

+0

感謝。它部分幫助我。但現在我有另一個身高問題。我是否需要分配一些面板的高度(RootLayoutPanel,DocsLayoutPanel)?我希望我的DockLayoutPanel具有100%的屏幕高度。 – 2012-07-24 10:16:10

+0

當你添加東,北,西和南時,你應該添加大小(北/南的高度和東/西的寬度),中心應該總是被添加到最後,它會佔用所有剩餘的空間。例如,如果你只是在中心添加一個按鈕,那麼它應該佔用所有空間 – Spiff 2012-07-24 10:56:49

+0

是的,我是按照你寫的。我想我找到了解決方案與CSS:HTML,身體{高度:100%; } – 2012-07-24 11:03:51