我是 GWT 的新手,打算使用 GWT 为用户管理应用程序开发 UI。 我打算使用使用 Spring/Hibernate 创建的现有模块。我想出了如何将 GWT 与 Spring 集成,但我不确定如何设计布局。
我想要两个页面:
- 用户注册页面(想要在 HTML 中嵌入 GWT 小部件)
- 管理页面(如上所述的独立 HTML,嵌入了 GWT 小部件)
- 我打算使用 Spring Security,我应该使用简单的 JSP 登录页面还是可以使用 RIA GWT 登录小部件?
我可以用什么来满足上述要求?多个 GWT 模块?
最佳答案
您可以制作 2 个模块,一个用于登录小部件,另一个用于管理小部件。每个小部件都会将自己插入到您想要的任何 html(或 jsp)页面的 div 中。
例如为每个模块创建一个*.gwt.xml,例如:login.gwt.xml和admin.gwt.xml。这些文件都应在您的 gwt 包的根目录下创建,例如:com.gwt.example
。
接下来,为每个创建一个“入口点”类(每个类将实现 EntryPoint )。例如,Login.java 可能如下所示:
package com.gwt.example.myproject.client;
public class Login implements EntryPoint {
public void onModuleLoad() {
... create loginWidget ..
RootPanel.get("my-login-div").add(loginWidget);
}
}
现在,当您进行 gwt 编译时,它应该在 war/com.gwt.example
下创建一堆文件。您感兴趣的两个是 com.gwt.example.login.nocache.js
和 com.gwt.example.admin.nocache.js
。
现在,您可以根据需要将这两个 js 脚本添加到任何 html 和/或 jsp 页面中。
要完成示例,您可以添加以下 html 以添加登录小部件:
<html>
....other stuff...
<script type="text/javascript" language="javascript" src="com.gwt.example.login.nocache.js"></script>
....other stuff....
<div id="my-login-widget"></div>
....the rest of your html markup....
</html>
因此,当您浏览到此 html 页面时,它会加载已编译的 gwt javascript,它知道加载 onModuleLoad,它会查找 id="my-login-widget"的 div 并插入登录小部件。
我从来没有使用过 Spring Security,所以除了 this article 没有什么帮助。看起来它可能描述了如何使 Spring Security 通过 ajax 工作。
关于java - 用于单独 HTML 页面的 GWT 多模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1898595/