经测试,在glassfishv3上能完美部署grails1.1.1项目。
1.数据源:
既然用的是glassfish,当然最好用它的jndi数据源,先配glassfish的数据源,连接池,如命名为:jdbc/cms。需要将对应数据库的jdbc驱动拷贝到形如:glassfishv3-prelude\glassfish\domains\yourdomain\lib ,也就是你创建的domain下找,这样数据源才能配置成功。也许可以配置全局的,但是这应该没有意义。
在grails项目中的DataSource.groovy中,做如下配置:
dataSource {
pooled = false
}
hibernate {
cache.use_second_level_cache=true
cache.use_query_cache=true
cache.provider_class='org.hibernate.cache.EhCacheProvider'
}
// environment specific settings
environments {
development {
dataSource {
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
username = "sa"
password = "xxxx"
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:sqlserver://localhost:1433;DatabaseName=cms"
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:sqlserver://localhost:1433;DatabaseName=cms"
}
}
production {
dataSource {
dbCreate = "update"
jndiName = "jdbc/cms"
}
}
}
红色部分是数据源的 jndi 名,grails文档上写的是 jndiName = "java:comp/env/myDataSource" ,经验证,不通过,需写成红色部份。
2.配置grails的UrlMapping.groovy
加上:
static excludes = ["/images/**", "/css/**"]
这里配置的目的是,让glassfish来处理静态资源。
3.配置备用文档
你可能需要做,形如www.xxx.com/uploads/images/xxx.jpg的一个目录映射。方法:
在您的grails项目中WEB-INF目录下,创建sun-web.xml
<!DOCTYPE sun-web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 Servlet 2.3//EN' 'http://www.sun.com/software/sunone/appserver/dtds/sun-web-app_2_3-0.dtd'>
<sun-web-app>
<property name="alternatedocroot_1" value="from=/uploads/* dir=G:\java\webapp\xxx\" />
<locale-charset-info>
<parameter-encoding default-charset="UTF-8" />
</locale-charset-info>
</sun-web-app>
这样,形如www.xxx.com/uploads/images/xxx.jpg会,映射到 G:\java\webapp\xxx\uploads\images\xxx.jpg
注意:from=/uploads/* 中的 /uploads 会追加到dir目录路径后面,所以创建目录时,需要注意,否则无法映射。
这样配置以后,浏览器中输入www.xxx.com/uploads 时,会显示这个目录下的所有文件,和文件夹。您可能不希望这样,可以编辑glassfishv3-prelude\glassfish\domains \yourdomain\config\default-web.xml文件,找到:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
红色部份改为false,默认为true。改成false后,您就可以禁止目录访问了。
我同时在tomcat6上也部署过同样的grails应用。从感观上,glassfishv3下面跑的比tomcat6下跑得快很多。应用中有很多图片,glassfishv3处理静态资源和性能上,从感观上可以感到明显差异。既然感观上能感觉出来了,就先不用工具做毫秒级的性能比较了。
不信,您自己个比较吧。
分享到:
相关推荐
在Eclipse中搭建Grails项目可能相对复杂,但通过以下步骤,即使是初学者也能顺利进行。 1. **Grails环境安装** - 首先,你需要从Grails官网(http://grails.org/)下载最新版的Grails安装包。 - 安装完成后,确保...
在Eclipse中开发Grails项目是一项技术性较强的工作,涉及到多个步骤和配置。Grails是一个基于Groovy语言的开源Web应用框架,它简化了Java开发流程。以下将详细阐述如何在Eclipse环境下配置Grails项目并进行调试。 ...
以上就是关于“grails项目配置”的核心内容,这个项目展示了Grails在处理复杂数据关系和数据库配置方面的灵活性,以及其作为全栈框架的强大能力。通过深入理解并实践这些知识点,开发者能够更好地掌握Grails框架,...
它构建在Spring Boot之上,内置了GORM(Grails Object Relational Mapping),提供了与数据库交互的能力。此外,Grails还支持RESTful服务,方便构建面向服务的架构。 二、Grails开发环境 1. 开发工具:Eclipse、...
在本节中,我们将深入探讨"Grails从零开始开发项目二"的相关知识点,这是一个关于使用Grails框架进行Web应用开发的学习过程。Grails是一种基于Groovy语言的开源Web应用框架,它以其高效的开发速度和丰富的插件生态...
Grails是构建在Groovy语言之上,它采用了MVC(Model-View-Controller)架构模式,旨在提高开发效率。Grails集成了许多流行的开源库,如Hibernate(ORM),Spring(依赖注入),以及Freemarker或GSP(视图层模板引擎...
接下来的关键问题是:**如何在Eclipse开发平台上使用Grails类创建工具来创建各种类?** 在Grails官网文档中,有详细的步骤指导如何在Eclipse中配置并使用这些工具。以下是一些关键步骤: 1. **配置Grails作为外部...
Grails项目基于Spring、Hibernate、Quartz和SiteMesh等流行的Java框架,可以在任何Java Web容器上部署,从而保证了企业级应用的性能和稳定性。 Grails的独特之处在于它能够吸收其他流行框架的优点,比如Spring的...
3. **配置Grails环境**:安装插件后,需要在Eclipse中配置Grails的路径,这样Eclipse才能找到Grails命令行工具。这通常在"Eclipse Preferences" -> "Grails"中设置。 4. **创建Grails项目**:现在,你可以通过...
Grails使用Gradle作为构建工具,提供了`grails war` 命令生成可部署的WAR文件,方便在各种Java应用服务器上部署。 九、测试 Grails内置了测试框架,支持单元测试、集成测试和功能测试。通过`test-app` 命令,可以...
本文主要介绍如何在Grails3项目中配置logback,实现日志的详细配置,包括按天生成独立的日志文件、日志格式设置以及对日志文件大小的控制。 首先,logback的配置文件是logback.groovy,需要放在项目的grails-app/...
3. **GORM (Grails Object-Relational Mapping)**: GORM是Grails的内置ORM框架,允许开发者使用Groovy DSL来处理数据库操作,支持多种数据库,如MySQL、PostgreSQL等。 4. **Grails Command Line Interface (CLI)**...
这将在指定目录下生成一个完整的Grails项目结构。 **3. 数据库配置** Grails默认使用H2内存数据库,如需使用MySQL,需修改`Config.groovy`中的数据库配置。添加如下代码: ```groovy dataSource { pooled = true ...
#### 一、Grails 概述及项目背景 Grails 是一种基于 Groovy 的开源全栈 Web 框架,它利用了 Groovy 和 Java 平台的强大功能来简化 Web 开发过程。本教程以一个实际项目为例,介绍如何使用 Grails 来开发 Web 应用...
1. **安装与配置**:详述如何在不同操作系统上安装Grails,设置环境变量,以及配置开发环境。 2. **创建新项目**:通过`grails create-app`命令创建项目,理解`grails-app`目录结构。 3. **编写Domain Class**:学习...
在当前的IT开发过程中,邮件发送功能是一个基础而广泛应用的功能,尤其在Web开发、在线服务以及日常的系统运维中。...通过上述步骤和注意事项的遵循,可以较为高效地在Grails 3项目中集成邮件发送功能。