2014년 5월 21일 수요일
JBoss EAP 6.0 (jBoss Application Server 7.0)에서 오라클 DataSource 설정하기
** 참고: https://community.jboss.org/thread/169104
1. 오라클 JDBC 드라이버(ojdbc6.jar) 다운로드
http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html
2. jBoss Oracle JDBC 모듈 추가
ojdbc6.jar 파일을 ${JBOSS_HOME}/modules/com/oracle/ojdbc6/main 디렉토리에 복사
위 디렉토리에 module.xml 파일을 생성하고 아래 내용으로 저장
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.oracle.ojdbc6">
<resources>
<resource-root path="ojdbc6.jar"/>
</resources>
<dependencies>
<module name="javax.api" />
<module name="javax.transaction.api"/>
<module name="javax.servlet.api" optional="true"/>
</dependencies>
</module>
3. DataSource 설정
${JBOSS_HOME}/standalone/configuration/standalone.xml에 DataSource 정보 추가
<datasources>
...
<datasource jndi-name="java:/TestDS" pool-name="TestDS" enabled="true">
<connection-url>jdbc:oracle:thin:@192.168.0.1:ORCL</connection-url>
<driver>oracle</driver>
<security>
<user-name>scott</user-name>
<password>tiger</password>
</security>
<validation>
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker"/>
<stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleStaleConnectionChecker"/>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"/>
</validation>
</datasource>
<drivers>
...
<driver name="oracle" module="com.oracle.ojdbc6">
<xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
라벨:
datasource,
jboss,
oracle
2011년 8월 2일 화요일
Tomcat JNDI Datasource 설정(MySQL)
출처: http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html
1. server.xml 파일에 resource 추가
1. server.xml 파일에 resource 추가
(1) context 아래에 resource 추가하기
(2) GlobalNamingResources 에 추가
2. web.xml 파일 수정

3. test.jsp
<Context path="/DBTest" docBase="DBTest" debug="5" reloadable="true" crossContext="true">
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/javatest"/></Context>
(2) GlobalNamingResources 에 추가
<GlobalNamingResources>
<Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase" />
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="javauser" password="javadude"
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/javatest" />
</GlobalNamingResources>
...
<Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase" />
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000" username="javauser" password="javadude"
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/javatest" />
</GlobalNamingResources>
...
<Context path="/DBTest" docBase="DBTest" debug="5" reloadable="true" crossContext="true"> <ResourceLink global="jdbc/TestDB" name="jdbc/TestDB" type="javax.sql.DataSource"/> </Context>
2. web.xml 파일 수정
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <description>MySQL Test App</description> <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/TestDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
3. test.jsp
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*" %>
<%@ page import="javax.activation.*" %>
<%
InitialContext cxt = new InitialContext();
javax.sql.DataSource ds = null;
Connection conn = null;
if ( cxt == null ) {
throw new Exception("Uh oh -- no context!");
}
ds = (javax.sql.DataSource) cxt.lookup( "java:/comp/env/jdbc/TestDB" );
if ( ds == null ) {
throw new Exception("Data source not found!");
}
conn = ds.getConnection();
out.println(conn.getMetaData().getDriverVersion());
%>
<%@ page import="javax.naming.*" %>
<%@ page import="javax.activation.*" %>
<%
InitialContext cxt = new InitialContext();
javax.sql.DataSource ds = null;
Connection conn = null;
if ( cxt == null ) {
throw new Exception("Uh oh -- no context!");
}
ds = (javax.sql.DataSource) cxt.lookup( "java:/comp/env/jdbc/TestDB" );
if ( ds == null ) {
throw new Exception("Data source not found!");
}
conn = ds.getConnection();
out.println(conn.getMetaData().getDriverVersion());
%>
라벨:
datasource,
java,
jndi,
MySQL,
tomcat
피드 구독하기:
글 (Atom)