17

对于不喜欢(或不知道)HTML/JS/CSS 来构建富 Web 界面的 Java 开发人员来说,GWT 似乎是一项非常好的技术。在服务器端,Grails 看起来也很不错,它经常被描述为“面向 Java 开发人员的 Rails”。我读过 Grails 的“约定优于配置”方法,以及动态语言 (Groovy) 的优势,可以真正减少需要编写的(样板)代码量,同时仍然利用同类最佳的 Java 技术比如 Spring 和 Hibernate。

无论如何,我还没有读到太多关于这些技术如何协同工作的信息。在服务器端将 GWT 与 Grails 集成起来有多容易?我有兴趣了解使用这些技术构建应用程序的任何人的经验吗?也非常欢迎关于构建 GWT-Grails 网站的资源(书籍/网站)的建议。

干杯,唐

4

4 回答 4

13

Grails 已经有一个 gwt 插件:检查一下

于 2008-11-22T12:30:50.243 回答
3

您确实在服务器端提到过 - GWT 和 grails 实际上并没有在服务器端很好地集成(考虑到 grails 域对象的工作情况,不如您预期的那么好)。对于 RPC,它的插件工作得非常好。

问题是域对象不能被序列化和通过网络传输 - 毕竟,它们是 groovy 对象。您将需要自定义制作数据传输对象 (DTO),并手动进行编组。可以将其自动化,但没有任何开源代码可以自动执行它 - 所以滚动你自己的代码是唯一的解决方案。

或者看看你是否可以让 Hibernate4gwt 与 grails 一起工作——但我怀疑它也不会开箱即用。

于 2008-11-23T13:53:02.867 回答
1

另一种方法:将 Grails 与 SmartGWT 一起使用。使用基于 REST 的集成来代替 GWT-RPC(太复杂,并且正如其他人所指出的,与 Grails 不兼容),因为 Grails 对序列化为 XML 或 JSON 有很好的支持,而 SmartGWT 具有内置的 REST 支持。看看这个显示示例源的博客 - 为任何 Grails 对象构建可重用的主从屏幕非常容易。

http://josip-dev.blogspot.com/2010/06/grails-smart-gwt.html

于 2010-07-31T18:17:18.917 回答
0

借助动态语言(Groovy)的优势,可以真正减少需要编写的(样板)代码量

这就是 RoR 阵营的人们一直在宣扬的。在一些最初的繁荣之后,RoR 项目在更大的项目中不可避免地遇到了麻烦。项目越大,应该委派给编译器的工作就越多,即静态语言越有价值。目前,RoR 热潮已经一去不复返了。

例如,您现在需要使用 JPA/Hibernate 编写的(额外)代码量几乎为零。仅注释。它甚至可以在运行时通过类路径找到映射的 bean!SpringFramework 也使许多其他“样板”代码块过时。

在我的 GWT 项目中(必须承认,到目前为止),我使用了 JPA(Hibernate)、DAO 层、业务委托模式,它既简单又健壮。

于 2008-11-21T20:38:39.150 回答