EJB3 시작 첫걸음 < JBOSS SETTING STAP_1>

2008.04.24 14:32EJB/Setting

JBOSS Server Setting

 

JBoss Server Setting 은 의외로 간단하다.

지금 다루고자 하는 OS환경은 Windows XP을 기준으로 하도록 하겠다

 

1.     JBOSS Web_Server를 설치 하기 위해 Jboss Site  http://www.jboss.org 에 접속한다.

è  Main page이기 때문에 WebApplication Server을 찾아 DownLoad page를 찾아야한다.

Renewal 될 때마다 새로 찾아 들어가야 하기 때문에 다음과 같은 링크로 바로 찾아가기보단 직접 홈페이지에 접속해 다운 받기를 권한다.

(http://www.jboss.org/jbossas/downloads/)

2.     Version은 항상 최신버전의 한 단계 아래인 안정화 버전을 다운 받기를 권한다.

3.     Windows O/S에 설치 하기에 Windows platform 을 다운 받도록 한다.

4.     Jboss를 설치하고자 하는 디렉토리에 다운받은 파일을 위치시키고 압축 파일을 푼다.

è  간혹 압축타입이 *…tar.gz 의 경우가 있는데, Linux설치 버전이기도 하지만.

실제 윈도우에서도 압축해제 후 설치 가능하다.

압축 해제 방식은 Linux해제 방식과 동일하며 방법은

tar –xvz [filename] /[디렉토리] 와 같은 방식으로 행해진다.

자세한 방법은 다른 참고서적 및 문서를 통해 알아보기 바란다.

 

이제 서버 WebApplication설치는 완료 되었다.

그렇다면 Jboss가 설치된 Home Directory로 이동하자.

1.     C:\java\jboss-4.2.2.ga>    <-이곳을 Home Directory로 잡았다.(어느 곳이던 상관없다.

2.     C:\java\jboss-4.2.2.ga\bin> 으로 이동하여 run.bat를 실행 하도록 하자.

(C:\java\jboss-4.2.2.ga\bin>run.bat 실행

행여 종료 시에 Windows X버튼을 클릭하여 종료시키곤 하는데 그것보단 [Ctrl + c] Break을 실행하여 종료 하거나 다른 Command창을 띄어 run.bat를 실행시킨 Directory에서 shotdown.bat을 사용하길 바란다.)

3.     자 무언가가 올라가면서

빨간색 원으로 표시된 Started in… 이라 나와 있다.

 


사용자 삽입 이미지



WebServer
가 잘 설치 되었는지 확인 하도록 하자.

 

Web Browser 실행시켜 주소창에 http://localhost:8080 을 쳐보도록 하차

(혹은 http://127.0.0.1:8080 -> :뒤에 붙은 내용은 Port로써 jboss설치시 xml파일에서 기본 설정되어 있다. 이내용은 뒤에서 좀더 자세히 알아보도록 하자.)


사용자 삽입 이미지



자 다음과 같은 화면이 뜬 것이라면 성공이다. 여기까지는 간단하다.

그럼 이제 서버 실제 개발을 위해 서버 setting을 하기 위한 작업을 진행해 보도록 하자.

다음단계도 위와 함께 간단하다.

 

그럼 이제 EJB에서 Transaction간 사용될 Data Source을 사용하기 위해 간단히 XML Setting을 하도록 하자.

 

Jboss WebLogic server와 같이 따로 간단하게 Manager를 통해 Module Deploy Data-Source 지정 등을 Web 으로 지원하지 않는다 (, 변경사항이 있어 지원한다면 본인에게도 알려주기 바란다 E-mail을 통해 알려주기 바란다.). 이에 서버관련 Setting Xml을 직접 수정하여 사용 하게끔 되어 있다. 그럼 처음으로 Data Source을 사용하기 위한 파일은 어떤 파일이며 어떻게 작성해야 하는지에 대해 알아보도록 하자.

 

Oracle 기준

 

1.      C:\java\jboss-4.2.2.GA\jboss-4.2.2.GA\server\default\deploy>다음 Directory로 이동하도록 하자.

2.      Oracle-ds.xml이라는 파일이 보일 것이다.

3.      다음 파일을 Edit-plus U-edit 혹은 notepad을 이용하여 본 파일을 열도록 하자.

처음 보는 글 들로 가득 차 있다.

 

<?xml version="1.0" encoding="UTF-8"?>

 

<!-- ===================================================================== -->

<!--                                                                       -->

<!--  JBoss Server Configuration                                           -->

<!--                                                                       -->

<!-- ===================================================================== -->

 

<!-- $Id: oracle-ds.xml 63175 2007-05-21 16:26:06Z rrajesh $ -->

<!-- ==================================================================== -->

<!--  Datasource config for Oracle originally from Steven Coy             -->

<!-- ==================================================================== -->

 

 

<datasources>

  <local-tx-datasource>

    <jndi-name>OracleDS</jndi-name>

    <connection-url>jdbc:oracle:thin:@192.168.10.141:1521:orcl</connection-url>

                  <!--

 

                                   Here are a couple of the possible OCI configurations.

                                   For more information, see http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/java.920/a96654/toc.htm

 

                  <connection-url>jdbc:oracle:oci:@youroracle-tns-name</connection-url>

                                   or

                  <connection-url>jdbc:oracle:oci:@(description=(address=(host=youroraclehost)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME=yourservicename)))</connection-url>

 

                                   Clearly, its better to have TNS set up properly.

                   -->

    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>

    <user-name>scott</user-name>

    <password>tiger</password>

    <!-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool -->

    <!--valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name-->

    <!-- Checks the Oracle error codes and messages for fatal errors -->

    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>

        <!-- sql to call when connection is created

        <new-connection-sql>some arbitrary sql</new-connection-sql>

        -->

 

        <!-- sql to call on an existing pooled connection when it is obtained from pool - the OracleValidConnectionChecker is prefered

        <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>

        -->

 

      <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml -->

      <metadata>

         <type-mapping>Oracle9i</type-mapping>

      </metadata>

  </local-tx-datasource>

 

</datasources>

 

내용이 짧아서 보기가 좋다.

정작 여기서 눈여겨보아야 할 부분은 빨간 글씨로 표시를 해두었다.

이 부분은 JDBC Query java.sql.* connection method()등 들을 사용하며 익혀두었기에 굳이 설명하지 안도록 하겠다.

 

행여 놓치기 쉬운 부분이 있는데 <type-mapping> 부분은 각 Version마다 다르니 확인 후 사용하기 바라며 9i 10g version의 경우 위와 같은 <type-mapping>을 사용한다.

 

4.      Data Base을 구동 후 서버를 구동시켜 보자.

과 같은 문구가 나타나게 되면 성공 된 것이다.

 

MS-SQL

1.      위와 같은 Directory로 이동하자.

2.      Oracle-ds.xml 파일과 비슷한 mssql-ds.xml파일을 확인할 수 있을 것이다.

è  혹 파일이 존재 하지 않는다면,

C:\java\jboss-4.2.2.GA\jboss-4.2.2.GA\docs\examples\jca Directory로 이동하여,

Mssql-ds.xml 파일이 있는지 확인 하도록 하자.

( Folder에 들어가보니 MSSQL MYSQL ORACLE DB2….etc등의 sampling 파일들이 존재한다. )

이 파일들을 Oracle-Ds.xml파일이 있는 곳으로 복사 하도록 하자.

( Oracle-Ds 파일이 없을 수도 있는데 그땐 위와 같은 방법으로 복사하여 수정 후 사용하도록 한다) 일일이 직접 타이핑 불필요.

3.       Mssql-ds.xml 파일을 파일을 Edit-plus U-edit 혹은 notepad을 이용하여 본 파일을 열도록 하자. 이것 또한 처음 보는 글 들로 가득 차 있다. 하지만 Oralcle-ds.xml파일을 열어 보았을 때와 별반 다르지 안음을 알 수 있다.

<?xml version="1.0" encoding="UTF-8"?>

<datasources>

             <!-- dbType:sqlserver -->

             <local-tx-datasource>

                           <jndi-name>MiracomBpmsDS</jndi-name>

                           <connection-url>jdbc:jtds:sqlserver://db.server:1433/BPMS</connection-url>

                           <driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>

                           <user-name>sa</user-name>

                           <password>manager0</password>

                           <min-pool-size>5</min-pool-size>

                           <max-pool-size>10</max-pool-size>

             </local-tx-datasource>

             <local-tx-datasource>

                           <jndi-name>MiracomRepository</jndi-name>

                           <connection-url>jdbc:jtds:sqlserver://db.server:1433/BPMS</connection-url>

                           <driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>

                           <user-name>sa</user-name>

                           <password>manager0</password>

                           <min-pool-size>5</min-pool-size>

                           <max-pool-size>10</max-pool-size>

             </local-tx-datasource>

             <local-tx-datasource>

                           <jndi-name>MiracomBamsDS</jndi-name>

                           <connection-url>jdbc:jtds:sqlserver://db.server:1433/BAMS</connection-url>

                           <driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>

                           <user-name>sa</user-name>

                           <password>manager0</password>

                           <min-pool-size>5</min-pool-size>

                           <max-pool-size>10</max-pool-size>

             </local-tx-datasource>

</datasources>

 

sample파일을 보면 조금은 다를 것이나, 크게 변화 된 것은 없다. 기본적인 필요한 부분만 기술하여 만든 xml로써 위에 기술한 내용은 여러 계정에 접속 할 수 있도록 기술되어 있다. Oracle또한 위와 같은 방식으로 사용가능하다

 

connection url driver class는 각 DB에 맞는 내용을 기술해 주어야 한다.

 

저장완료 후에 서버를 다시 구동 시켜보자.

다음과 같은 구문이 존재 하면 성공한 것이다.

 

Server Setting은 다음과 같이 간단히 완료 되었다.

Error없이 잘된다면 다행이지만 Error가 발생한다면 에러 메시지를 확인 후 풀어 나갈 것 이며, Bender에서 제공하는 jar File(ex : classes12.jar , ojdbc.jar ….. ext)

%JAVA_HOME%\ C:\java\jdk1.5.0_15\jre\lib\ext> 이곳에 복사를 해두었는지, 혹은

CLASS_PATH을 잡아주었는지 확인해 보기 바란다.