jBoss7은 설치 되어 있어야 하고, Web Application 기준으로 설명 한다.


아래 그림은 일반적인 Web Application의 폴더 구조 이다. /WEB-INF/ 안에 해당 파일을 만들어 보자.




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

<!-- JBoss, Home of Professional Open Source Copyright 2012, Red Hat, Inc. 

    and/or its affiliates, and individual contributors by the @authors tag. See 

    the copyright.txt in the distribution for a full listing of individual contributors. 

    Licensed under the Apache License, Version 2.0 (the "License"); you may not 

    use this file except in compliance with the License. You may obtain a copy 

    of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 

    by applicable law or agreed to in writing, software distributed under the 

    License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 

    OF ANY KIND, either express or implied. See the License for the specific 

    language governing permissions and limitations under the License. -->


<!-- Configure usage of the security domain "other" -->

<jboss-web>

   <context-root>/</context-root>

</jboss-web>



jBoss가 Start 될 때, Path를 설정 하는 부분이다. 


  • / -> http://localhost:8080/
  • /test -> http://localhost:8080/test

이런 형태로 적용이 된다.



log4j.xml 파일을 수정 한다. 아래 속성을 제거 한다.

<param name="threshold" value="debug" /> 


'Server,Was' 카테고리의 다른 글

Apache Friends XAMPP 설치 하기  (0) 2013.01.30
jBoss7 Path 설정 하기  (0) 2013.01.30
jBoss7 Log4j 연동 하기  (0) 2013.01.29
jBoss7 Web Application Deploy 하기  (0) 2013.01.28
jBoss7 설치하기  (0) 2013.01.27


jBoss7은 설치 되어 있어야 하고, Web Application 기준으로 설명 한다. 

빌드 툴은 Maven을 이용 한다.


Step 1.  jboss-deployment-structure.xml 만들기

아래 그림은 일반적인 Web Application의 폴더 구조 이다. /WEB-INF/ 안에 해당 파일을 만들어 보자. 




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

<jboss-deployment-structure>

  <deployment>

    <exclusions>

        <module name="org.apache.log4j" />

        <module name="org.apache.commons.logging" />

        <module name="org.slf4j"/>

    </exclusions>

  </deployment>

</jboss-deployment-structure>



위 파일을 적용 해야만, Tomcat과는 다르게 log4j을 사용 할 수 있다.


Step 2.  Log4j Library Dependency

pom.xml 파일에 추가 한다.


<!-- Version Config -->

<properties>

<slf4j.version>1.6.1</slf4j.version>

<log4j.version>1.2.14</log4j.version>

</properties>


<dependencies>

<!-- SLF4J -->

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>jcl-over-slf4j</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>slf4j-api</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>slf4j-log4j12</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<!-- Log4j -->

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>${log4j.version}</version>

<exclusions>

<exclusion>

<groupId>javax.mail</groupId>

<artifactId>mail</artifactId>

</exclusion>

<exclusion>

<groupId>javax.jms</groupId>

<artifactId>jms</artifactId>

</exclusion>

<exclusion>

<groupId>com.sun.jdmk</groupId>

<artifactId>jmxtools</artifactId>

</exclusion>

<exclusion>

<groupId>com.sun.jmx</groupId>

<artifactId>jmxri</artifactId>

</exclusion>

</exclusions>

<scope>runtime</scope>

</dependency>

</dependencies>



Step 3.  web.xml 수정 하기

log4j.xml 파일의 경로를 설정 한다.


// ...


<context-param>

<param-name>log4jConfigLocation</param-name>

<param-value>classpath:log4j.xml</param-value>

</context-param>


// ...



Step 4. log4j.xml 만들기


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

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<!-- Console -->

<appender name="stdout" class="org.apache.log4j.ConsoleAppender">

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%d %5p %c{1} - %m%n" />

</layout>

</appender>

<!-- File -->

<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">

<param name="DatePattern" value=".yyyyMMdd" />

<param name="File" value="log/whitelife.log" />

<param name="Append" value="true" />

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%d %5p %c{1} - %m%n" />

</layout>

</appender>

<!-- root -->

<root>

<priority value="debug"/>

<appender-ref ref="stdout" />

<appender-ref ref="file" />

</root>

</log4j:configuration>



Step 5.  Source Code 적용하기


// package

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;


// field

private Logger logger = LoggerFactory.getLogger(getClass());


// use

logger.debug("test");






jBoss7로 Hello World !!!를 찍어보자. 

설치가 되어 있지 않거나, Admin 아이디가 없는 경우 jBoss7 설치하기 글을 참고 하자.

War 파일은 준비 되지 않는 분들을 위하여 첨부 한다.

whitelife-0.0.1-SNAPSHOT.war


Step 1. 설정 하기

D:\Develop\was\jboss\jboss-as-7.1.1.Final\standalone\configuration\standalone.xml 파일을 열자.

jBoss가 run이 되는 시점에서 default application이 올라가기 때문에 비활성화 해줘야 한다.


enable-welcome-root="true" -> enable-welcome-root="false" 로 수정한다.

true 상태로 올라가는 경우 path가 중복되면서 예외가 발생 하여 서비스가 시작 되지 않는다.



// ...


<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">

    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>

    <virtual-server name="default-host" enable-welcome-root="false">

<alias name="localhost"/>

<alias name="example.com"/>

    </virtual-server>

</subsystem>


// ...



Step 2. 서버 시작 하기


D:\Develop\was\jboss\jboss-as-7.1.1.Final\bin>standalone.bat


// ...



Step 3. 관리자 페이지 접속 하기

Management Port 9990 으로 접속 한다. 아이디와 비밀번호를 입력 한다.


Step 4. War Deploy 하기

Manage Deployments 클릭


Add Content 클릭


War 파일을 추가 하자




deploy가 성공 하였다. 


00:46:43,232 INFO  [org.jboss.as.repository] (HttpManagementService-threads - 7) JBAS014900: Content added at location D:\Develop\was\jboss\jboss-as-7.1.1.Final\standalone\data\content\c3\1214888120a070dd3a5ffc7cd5a7c24a546b9c\content



Step 4. War Run 하기

Enable 클릭




정상적으로 서비스가 시작 되었다.


00:45:24,082 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015876: Starting deployment of "whitelife-0.0.1-SNAPSHOT.war"

00:45:24,130 INFO  [org.jboss.web] (MSC service thread 1-3) JBAS018210: Registering web context:

00:45:24,271 INFO  [org.jboss.as.server] (HttpManagementService-threads - 7) JBAS018559: Deployed "whitelife-0.0.1-SNAPSHOT.war"



Step 5. Hello World !!! 확인 하기

http://localhost:8080 접속 하기


Hello World !!! 를 확인 할수 있다.



jBoss7 설치에 대해 알아보자. Java는 설치되어 있다고 가정 한다.


Step 1. jBoss7 다운 받기

http://www.jboss.org/projects 접속 후 다운로드 한다. 버전은 7.1.1 Final을 사용 했다.



Step 2. JAVA 환경변수 확인 하기

Java 기반 이기 때문에 JAVA_HOME 변수 설정이 필요 하기 때문에, 없는 경우 작성 한다.

제어판 > 시스템 > 고급 시스템 설정 > 환경 변수 > 새로 만들기



Step 3. Admin 계정 만들기

D:\...\jboss\bin\add-user.bat 파일 실행, 아이디와 비밀번호를 생성 한다.


D:\Develop\was\jboss\jboss-as-7.1.1.Final\bin>add-user.bat


What type of user do you wish to add?

 a) Management User (mgmt-users.properties)

 b) Application User (application-users.properties)

(a): a


Enter the details of the new user to add.

Realm (ManagementRealm) :

Username : whitelife

Password :

Re-enter Password :

About to add user 'whitelife' for realm 'ManagementRealm'

Is this correct yes/no? yes

Added user 'whitelife' to file 'D:\Develop\was\jboss\jboss-as-7.1.1.Final\standa

lone\configuration\mgmt-users.properties'

Added user 'whitelife' to file 'D:\Develop\was\jboss\jboss-as-7.1.1.Final\domain

\configuration\mgmt-users.properties'

계속하려면 아무 키나 누르십시오 . . .


D:\Develop\was\jboss\jboss-as-7.1.1.Final\bin>



Step 4. 서버 시작 하기


D:\Develop\was\jboss\jboss-as-7.1.1.Final\bin>standalone.bat


// ...



Step 5. Start Page 확인 하기

Port는 D:\Develop\was\jboss\jboss-as-7.1.1.Final\standalone\configuration\standalone.xml 파일에서 확인 한다.


// ...


<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">

    <socket-binding name="management-native" interface="management" port="${jboss.management.native.port:9999}"/>

    <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>

    <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9443}"/>

    <socket-binding name="ajp" port="8009"/>

    <socket-binding name="http" port="8080"/>

    <socket-binding name="https" port="8443"/>

    <socket-binding name="osgi-http" interface="management" port="8090"/>

    <socket-binding name="remoting" port="4447"/>

    <socket-binding name="txn-recovery-environment" port="4712"/>

    <socket-binding name="txn-status-manager" port="4713"/>

    <outbound-socket-binding name="mail-smtp">

        <remote-destination host="localhost" port="25"/>

    </outbound-socket-binding>

</socket-binding-group>


// ...



Start Page


Step 6. Admin Page 확인하기

Management Port 9990 으로 접속 한다. 아이디와 비밀번호를 입력한다.


로그인 성공 !!!


정상적으로 동작 하는 것을 확인 할 수 있다.

'Server,Was' 카테고리의 다른 글

jBoss7 Log4j 연동 하기  (0) 2013.01.29
jBoss7 Web Application Deploy 하기  (0) 2013.01.28
Tomcat Dbcp AbandonedPool 관련  (0) 2012.12.23
Tomcat File Encoding 설정하기  (1) 2012.11.21
Tomcat Session ID 변경하기  (0) 2012.11.21

+ Recent posts