从eclipse执行GWT应用程序

时间:2012-03-18 13:11:23

标签: java eclipse gwt

我是GWT的初学者。我提出了我的入门课程如下:

public class HelloWorld implements EntryPoint {


public void onModuleLoad() {
    // TODO Auto-generated method stub
    Label label = new Label("Hello GWT !!!");
    Button button = new Button("Say something");
    button.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            Window.alert("Hello, again");
        }

    });

    try{
    RootPanel.get("hold").add(label);
    RootPanel.get("hold").add(button);
    }catch(Exception e){
        System.out.println(e.toString());
    }
}

}

和xml文件将条目类声明为:

 <?xml version="1.0" encoding="UTF-8"?>
<module rename-to='testgwt'>
  <inherits name='com.google.gwt.user.User'/>
  <inherits name='com.google.gwt.user.theme.clean.Clean'/>
  <!-- Specify the app entry point class -->
  <entry-point class="com.jade.testgwt.client.HelloWorld"/>
</module>

html文件如下:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <link type="text/css" rel="stylesheet" href="TestGWT.css">
    <title>My First GWT applicaton</title>
    <script type="text/javascript" language="javascript" src="testgwt/test_gwt.nocache.js"></script>
  </head>

  <body>
    <h1>My First GWT applicaton</h1>
    <div id="hold"></div>

  </body>
</html>

所以当我通过右键单击项目并选择Run as Web application运行时,我希望在网页上看到标签和按钮控件。我只能看到h1的标签文字。不知道为什么标签和按钮没有显示?

4 个答案:

答案 0 :(得分:1)

代替RootPanel.get("hold").add(...),试试这个:

RootLayoutPanel.get().add(label);
RootLayoutPanel.get().add(button);

答案 1 :(得分:0)

GWT模块的完全限定名称是什么?如果模块名称为test_gwt.nocache.js,我认为testgwt不正确。尝试删除下划线。在任何情况下,您都可以在Firefox中安装Firebug来监控网络活动,并查看获取JS的请求是否失败。

编辑:如果在Eclipse中创建“新建Web应用程序”项目,则会生成一个可以比较代码的工作示例应用程序。

答案 2 :(得分:0)

你需要采取面板。在该面板中添加标签和按钮。

该面板将添加到RootPanel.get(“hold”)。add(...)。

答案 3 :(得分:0)

将此行添加到ID为“hold”

的部门下方的HTML页面
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position: absolute; width: 0; height: 0; border: 0"></iframe>

你错过了这一行。

同时在HTML页面中编辑脚本标记,

确保 testgwt 文件夹下存在 testgwt.nocache.js