vaadin与grails的集成应用开发

Grails和Vaadin集成开发

1、 建立Grails应用
grails create-app hello

2、 进入应用目录
cd hello

3、 建立领域类
grails create-domain-class Person

4、 编辑领域类,添加属性
package hello
class Person {
  static constraints = {
  }

  String name
  Integer age
}

5、 生成Person领域类的所有层
grails generate-all hello.Person

6、 启动grails应用,测试应用
grails run-app

7、 在浏览器中访问grails应用
http://localhost:8080/hello

8、 至此,还没有加入vaadin的内容,只是grails的,下面开始增加vaadin作为ui
9、 先要停止grails应用,control-c
10、 将vaadin的jar包加入hello应用的lib目录
11、 使用groovy编写vaadin应用
package hello

import com.vaadin.ui.*
import com.vaadin.data.*
import com.vaadin.data.util.*

class VaadinApp extends Application {
  void init() {
    def window = new Window(“Hello Vaadin and Grails!”)
    def label = new Label(“Vaadin and Grails Application running.”) 
    window.addComponent label
    setMainWindow window
  }
}

12、 发布vaadin UI应用
在grails应用的src/groovy目录下,建立一个新的servlet
package hello

import javax.servlet.ServletException
import javax.servlet.http.HttpServletRequest
import com.vaadin.Application

class VaadinAppServlet extends com.vaadin.terminal.gwt.server.AbstractApplicationServlet{
  @Override
  protected Class <? Extends Application> get ApplicationClass() throws ClassNotFoundException{
    return VaadinApp.class
  }

  @Override
   protected Application getNewApplication(HttpServletRequest request) throws ServletException {
      return new VaadinApp()
    }
}

13、 下面需要在web.xml中配置这个新的servlet
14、 安装grails的模板文件
grails install-templates

15、 打开位于src/templates/war目录下的web.xml
16、 加入下述内容:
<servlet>
    <servlet-name>VaadinServlet</servlet-name>
    <servlet-class>hello.VaadinAppServlet</servlet-class>
</servlet>
<servlet-mapping>
     <servlet-name>VaadinServlet</servlet-name>
     <url-pattern>/VAADIN/*</url-pattern>
</servlet-mapping>

17、 现在可以启动grails应用了
grails run-app
18、访问应用的vaadin界面
http://localhost:8080/hello/VAADIN

19、备注
  对于使用grails 2.0,可以进入grails的命令环境,在增加了vaadin的jar包后,需要退出命令环境,重新进入才行。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值