当前位置:  开发笔记 > 编程语言 > 正文

如何将Spring Roo和GWT结合在一起

如何解决《如何将SpringRoo和GWT结合在一起》经验,为你挑选了1个好方法。

我正在尝试使用Roo中最新的GWT集成开发Spring Roo/GWT应用程序.

让脚手架工作是非常简单的,但我真的不明白RPC如何在那里工作.

有人可以提供一个简单的例子,说明如何在Spring Roo和GWT中连接客户端/服务器.

一开始会非常有帮助,因为我找不到任何资源.

thx&respect,Flo



1> 小智..:

弗洛,

不确定你是否依赖谷歌浪潮,但这似乎是一个保持当前努力的地方.具体来说,这个浪潮可供公众使用: RequestFactory Wave

它涵盖了有关RequestFactory API的详细信息(很多新出现的细节).

基本思想是在服务器端和客户端需要您的域模型对象.使用Hibernate会引起问题与类文件和人民清盘有两套模型对象,并使用自定义GWT-RPC,使客户端和服务器端的模型对象之间的服务器请求和马歇尔/ UN-马歇尔.不是理想的解决方案.即使您可以使用相同的模型对象,RPC的开销也是一种阻力.

输入RequestFactory,我们看到谷歌工程师可能会获得他们的价值.看一下从.roo生成的示例代码 - 特别是ApplicationRequestFactory.java.

package com.springsource.extrack.gwt.request;

import com.google.gwt.requestfactory.shared.RequestFactory;

public interface ApplicationRequestFactory extends RequestFactory {
    ReportRequest reportRequest();
    ExpenseRequest expenseRequest();
    EmployeeRequest employeeRequest();
}

这是一个为每个域对象提供请求方法的接口.项目中没有定义此类的实现.它在EntryPoint中实例化,调用GWT.create(...):

final ApplicationRequestFactory requestFactory = 
    GWT.create(ApplicationRequestFactory.class);
requestFactory.init(eventBus);

com.springsource.extrack.gwt.request包中,您将看到一个ApplicationEntityTypesProcessor.java,它巧妙地使用泛型来打包对域类的引用,以便稍后在演示文稿中使用.该软件包的其余部分是每个模型对象的事件和处理程序.

具体来说,每个对象有四个自动生成的类:

EmployeeRecord.java - 这是域对象的DTO.

EmployeeRecordChanged.java - 这是一个RecordChanged事件,用于提供onEmployeeChanged的钩子方法.

EmployeeChangedHandler.java - 这是在需要onEmployeeChanged的特定行为时实现的接口.

EmployeeRequest.java - 这是ApplicationRequestFactory用于打包给定对象的各种访问方法的接口.

请记住,幕后生成了大量代码来支持所有这些.从M1到M2,很多东西都被清除了GWT项目中可见的东西.我希望会有更多的变化,但不像M1到M2那样剧烈.

因此,最终这些事件可以在UI包中使用,以将域和UI联系在一起.ReportListActivity.java:

public void start(Display display) {
    this.registration = eventBus.addHandler(ReportRecordChanged.TYPE, new ReportChangedHandler() {
        public void onReportChanged(ReportRecordChanged event) {
            update(event.getWriteOperation(), event.getRecord());
        }
    });
    super.start(display);
}

我再次向您推荐wave以获取更多信息.另外,expenses.roo演示了如何使用Places并且还有一个相当灵活的Activity框架.快乐的GWTing.

问候.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有