Enjoy yourself,and don't care about others' thinking!
----TiGERTiAN
BlogJava
首页
新随笔
联系
聚合
管理
随笔-348 评论-598 文章-0 trackbacks-0
Grails使用JNDI方法
今天搞了一下Grails的JNDI配置,步骤如下:
1、在应用目录下面,META-INF下建立一个Context.xml文件,内容如下:
<?
xml version="1.0" encoding="UTF-8"
?>
<
Context
path
="/game_hall_local"
docBase
="game_hall_local"
debug
="5"
reloadable
="true"
crossContext
="true"
>
<!--
maxActive: Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to -1 for no limit.
-->
<!--
maxIdle: Maximum number of idle dB connections to retain in pool.
Set to -1 for no limit. See also the DBCP documentation on this
and the minEvictableIdleTimeMillis configuration parameter.
-->
<!--
maxWait: Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->
<!--
username and password: MySQL dB username and password for dB connections
-->
<!--
driverClassName: Class name for the old mm.mysql JDBC driver is
org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
-->
<!--
url: The JDBC connection url for connecting to your MySQL dB.
-->
<
Resource
name
="jdbc/mydatasource"
auth
="Container"
type
="javax.sql.DataSource"
driverClassName
="com.mysql.jdbc.Driver"
url
="jdbc:mysql://localhost:3306/game_hall_cms?useUnicode=true&characterEncoding=UTF-8"
username
="root"
password
="root"
maxActive
="20"
maxIdle
="10"
maxWait
="-1"
/>
</
Context
>
2、在DataSource.groovy里面将部署连接配置修改成如下代码:
production
{
dataSource
{
pooled
=
false
dbCreate
=
"
update
"
jndiName
=
"java:comp/env/
jdbc/mydatasource
"
}
}
3、在应用工程的scripts目录下,简历_Event.groovy文件,内容如下:
import
groovy.xml.StreamingMarkupBuilder
if
(Environment.current
==
Environment.PRODUCTION)
{
eventWebXmlEnd
=
{String tmpfile
->
def root
=
new
XmlSlurper().parse(webXmlFile)
//
add the data source
root.appendNode
{
'
resource-ref
'
{
'
description
'
(
'
The JNDI Database resource
'
)
'
res-ref-name
'
(
'
jdbc/mydatasource
'
)
'
res-type
'
(
'
javax.sql.DataSource
'
)
'
res-auth
'
(
'
Application
'
)
}
}
webXmlFile.text
=
new
StreamingMarkupBuilder().bind
{
mkp.declareNamespace(
""
:
"
http://java.sun.com/xml/ns/j2ee
"
)
mkp.yield(root)
}
}
}
4、可以进行生产环境编译,这样在生产环境中部署,就可以使用JNDI了。
注意:sql连接的url中如果有&需要转移成&,否则他会报 需要分隔符“;”作为终止符号 的错误。
---------------------------------------------------------
专注移动开发
Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
posted on 2010-02-08 15:28
TiGERTiAN
阅读(1721)
评论(0)
编辑
收藏
所属分类:
Java
、
Grails
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
OSGi and Hadoop and Node.js
javacc工具小记
MyEclipse 6.5新序列号,到2013年
OtaNotifier.java
Java中无符号整数
C#的BinaryWriter和Java的DataInputStream之间的数据相互转换
在Mac下面下载Android源代码
[转]Java通过XML Schema校验XML
[转]JAVA上加密算法的实现用例
LG GW880(Ophone)开启ADB调试模式
专注移动开发--Windows Mobile, Android, iPhone, J2ME, BlackBerry, Symbian, Windows Phone
慢慢混,慢慢学
<
2010年2月
>
日
一
二
三
四
五
六
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(40)
给我留言
查看公开留言
查看私人留言
随笔分类
(402)
Ajax(4)
Android(58)
BlackBerry(8)
C/C++(3)
Design Patterns(6)
Discuz!NT(1)
DotNet(26)
Feeling(61)
Flex(4)
Grails(2)
Hibernate(1)
iPhone(5)
J2ME(11)
Java(99)
JSF(26)
Linux(18)
MapXtreme(9)
Objective c(1)
Oracle(6)
Other technique(20)
Perl/Python(1)
Roller (10)
Symbian
VB/ASP(7)
WebWork(3)
Windows Mobile(10)
WindowsPhone(2)
随笔档案
(306)
2017年5月 (1)
2016年8月 (1)
2015年11月 (1)
2015年2月 (1)
2015年1月 (1)
2013年12月 (1)
2013年5月 (1)
2013年4月 (1)
2012年9月 (1)
2012年7月 (1)
2012年6月 (1)
2012年5月 (2)
2012年4月 (1)
2012年2月 (2)
2012年1月 (1)
2011年11月 (2)
2011年10月 (1)
2011年9月 (1)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年3月 (3)
2011年2月 (4)
2011年1月 (15)
2010年12月 (1)
2010年11月 (2)
2010年10月 (6)
2010年9月 (12)
2010年8月 (3)
2010年7月 (2)
2010年6月 (6)
2010年5月 (14)
2010年4月 (7)
2010年3月 (16)
2010年2月 (10)
2010年1月 (14)
2009年12月 (12)
2009年11月 (5)
2009年10月 (3)
2009年9月 (2)
2009年8月 (3)
2009年6月 (1)
2009年4月 (2)
2009年3月 (2)
2009年1月 (3)
2008年12月 (3)
2008年11月 (20)
2008年10月 (17)
2008年9月 (3)
2008年4月 (1)
2008年3月 (2)
2008年2月 (8)
2008年1月 (1)
2007年11月 (2)
2007年10月 (13)
2007年9月 (3)
2007年7月 (4)
2007年6月 (2)
2007年5月 (12)
2007年4月 (15)
2007年3月 (6)
2007年2月 (2)
2007年1月 (1)
2006年7月 (2)
2006年4月 (1)
2006年1月 (1)
2005年11月 (1)
2005年8月 (1)
2005年7月 (9)
相册
我正在读的书
我的好友们
JavaBy
有心就有翼 有梦就会飞--MC
搜索
积分与排名
积分 - 807874
排名 - 50
最新评论
1. re: Hibernate三种状态的区分,以及save,update,saveOrUpdate,merge等的使用[未登录]
哈哈~
--a
2. re: onInterceptTouchEvent和onTouchEvent调用时序
@米其林的微笑
在你的子view重写ontouchevent方法就行
--kxt
3. re: Android弹出拨号界面和拨打电话实现
这找不到call是怎么回事?现在有别的方法实现这个功能吗?
--firetomato
4. re: Android弹出拨号界面和拨打电话实现
请我dial和call方法有什么区别么?
--jaime
5. re: Android文字跑马灯控件(文本自动滚动控件)
如何让滚动的速度快一点啊??
--学鸟
阅读排行榜
1. onInterceptTouchEvent和onTouchEvent调用时序(38689)
2. Android的Intent和IntentFilter应用说明一例(37696)
3. Hibernate三种状态的区分,以及save,update,saveOrUpdate,merge等的使用(34315)
4. Android中短信拦截解决方案(31073)
5. Android中ContentProvider和ContentResolver使用入门(21419)
评论排行榜
1. 【JSF】Richfaces复选框树(Checkbox tree)的权限分配的解决方案(69)
2. JSF中动态生成HtmlMessage控件出错的解决办法(38)
3. hibernate中at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)异常的解决方法(27)
4. 这两天用Flex写了一个多媒体播放器(19)
5. Android文字跑马灯控件(文本自动滚动控件)(17)