자료는...

www.tmax.co.kr 에서 개발/배포하는

웹서버(WebToB)와 JEUS(servlet container)의

설치 및 시동에 관한 자료입니다.

하루종일 고생했습니다. -.-

도움이 되셨으면 좋겠네요.

----------------------------------------------------------------------------------------

1. 필요 프로그램

- j2sdk1.4.1_07 (http://java.sun.com)

- jeus42.exe (http://www.tmax.co.kr)

- webtob_3.1.6(build3).exe (http://www.tmax.co.kr)

----------------------------------------------------------------------------------------

2. j2sdk1.4.1_07 설치

- path에 C:/jdk1.4.1_07/bin 설정

- classpath에 . 설정

----------------------------------------------------------------------------------------

3. JEUS42 설치

- JEUS42.exe를 실행

- 중간에 자신의컴퓨터이름을 입력합니다. (저의 경우 realchokyCompaq)

- 설치 후 다음 세개의 파일을 자신의 환경에 맞게 편집

1) c:\jeus42\config\realchokyCompaq\JEUSMain.xml

    제우스 설정파일
2) c:\jeus42\webhome\servlet_home\webapps\examples\web-inf\web.xml


3) C:\Jeus42\config\realchokyCompaq\realchokyCompaq_servlet_engine1\WEBMain.xml

   제우스 웹컨테이너 설정파일

   (제우스는 멀티웹컨테이너를 지원하고, 각 웹컨테이너는 WEBMain.xml에서 설정한다.)



설정예)



1) JEUSMain.xml

<?xml version="1.0"?>
<!DOCTYPE jeus-system PUBLIC "-//Tmax Soft, Inc.//DTD JEUS Main Config 4.0//EN"
                             "http://www.tmaxsoft.com/jeus/dtd/4.0/jeus-main-config.dtd">
<jeus-system>
    <node>
        <name>realchokyCompaq</name>
        <class-ftp>true</class-ftp>
        <sequential-start>true</sequential-start>
        <enable-webadmin>false</enable-webadmin>
        <system-log>
            <level>debug</level>
        </system-log>
        <engine-container>
            <name>container1</name>
            <engine-command>
                <type>servlet</type>
                <name>engine1</name>
                <startup-mode>xml</startup-mode>
            </engine-command>
            <tm-config>
                <pooling>
                    <min>10</min>
                    <max>20</max>
                    <step>2</step>
                    <period>600000</period>
                </pooling>
                <active-timeout>300000</active-timeout>
                <commit-timeout>120000</commit-timeout>
                <capacity>20000</capacity>
            </tm-config>
        </engine-container>
    </node>
<resource>

<!-- 아래 data-source는 자신의 DB환경에 맞게 편집해야합니다.-->
  <data-source>
   <database>
        <vendor>oracle</vendor>
     <export-name>oratest</export-name>
     <data-source-class-name>oracle.jdbc.pool.OracleConnectionPoolDataSource</data-source-class-name>
     <data-source-type>ConnectionPoolDataSource</data-source-type>
     <database-name>oratest</database-name>
     <data-source-name>oracle.jdbc.pool.OracleConnectionPoolDataSource</data-source-name>
     <description>Customer DB</description>
     <password>tiger</password>
     <encryption>false</encryption>
     <port-number>1521</port-number>
     <server-name>192.168.1.139</server-name>
     <user>scott</user>
     <driver-type>thin</driver-type>
     <connection-pool>
      <pooling>
       <min>2</min>
       <max>4</max>
       <step>1</step>
       <period>600000</period>
      </pooling>
      <wait-free-connection>
       <enable-wait>true</enable-wait>
       <wait-time>10000</wait-time>
      </wait-free-connection>
     <operation-to>30000</operation-to>
    </connection-pool>
   </database>
  </data-source>
</resource>
</jeus-system>


2) web.xml

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

<!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN' 'file:///C:\Jeus42/config/dtds/web-app_2_3.dtd'>

<web-app>
  <display-name> Examples </display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>ServletContextTest</servlet-name>
    <servlet-class>ServletContextTest</servlet-class>
    <init-param>
      <param-name>color</param-name>
      <param-value>blue</param-value>
    </init-param>
    <init-param>
      <param-name>age</param-name>
      <param-value>20</param-value>
    </init-param>
    <load-on-startup>-1</load-on-startup>
<!--
<security-role-ref>
  <role-name>USER</role-name>
  <role-link>jsvuser</role-link>
</security-role-ref>
-->
  </servlet>
  <servlet>
    <servlet-name>RequestHeaderTest</servlet-name>
    <servlet-class>RequestHeaderTest</servlet-class>
    <load-on-startup>-1</load-on-startup>
  </servlet>
  <servlet>
    <servlet-name>RequestInfoTest</servlet-name>
    <servlet-class>RequestInfoTest</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ServletTest</servlet-name>
    <servlet-class>ServletTest</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>SessionTest</servlet-name>
    <servlet-class>SessionTest</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>CookieTest</servlet-name>
    <servlet-class>CookieTest</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ForwardTest1</servlet-name>
    <servlet-class>ForwardTest1</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>IncludeTest1</servlet-name>
    <servlet-class>IncludeTest1</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ForwardedPage</servlet-name>
    <servlet-class>ForwardedPage</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ForwardTest2</servlet-name>
    <servlet-class>ForwardTest2</servlet-class>
    <load-on-startup>-1</load-on-startup>
  </servlet>
  <servlet>
    <servlet-name>IncludeTest2</servlet-name>
    <servlet-class>IncludeTest2</servlet-class>
    <load-on-startup>-1</load-on-startup>
  </servlet>
  <servlet>
    <servlet-name>IncludedPage</servlet-name>
    <servlet-class>IncludedPage</servlet-class>
    <load-on-startup>-1</load-on-startup>
  </servlet>
  <servlet>
    <servlet-name>ContextListenerTest</servlet-name>
    <servlet-class>listeners.ContextListenerTest</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet>
    <servlet-name>SessionListenerTest</servlet-name>
    <servlet-class>listeners.SessionListenerTest</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>ServletContextTest</servlet-name>
    <url-pattern>/context</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>RequestHeaderTest</servlet-name>
    <url-pattern>/header</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>RequestInfoTest</servlet-name>
    <url-pattern>*.info</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>SessionTest</servlet-name>
    <url-pattern>/session</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>CookieTest</servlet-name>
    <url-pattern>/cookie</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ForwardTest1</servlet-name>
    <url-pattern>/forward1</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>IncludeTest1</servlet-name>
    <url-pattern>/include1</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ServletContextTest</servlet-name>
    <url-pattern>*.conf</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>RequestHeaderTest</servlet-name>
    <url-pattern>/header/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>RequestInfoTest</servlet-name>
    <url-pattern>/info</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>RequestInfoTest</servlet-name>
    <url-pattern>/info/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ForwardTest2</servlet-name>
    <url-pattern>/forward2</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>IncludeTest2</servlet-name>
    <url-pattern>/include2</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ForwardedPage</servlet-name>
    <url-pattern>/ForwardedPage/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>IncludedPage</servlet-name>
    <url-pattern>/IncludedPage/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>SessionTest</servlet-name>
    <url-pattern>/session/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ContextListenerTest</servlet-name>
    <url-pattern>/ContextListenerTest</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>SessionListenerTest</servlet-name>
    <url-pattern>/SessionListenerTest</url-pattern>
  </servlet-mapping>

  <session-config>
   <session-timeout>30</session-timeout>
  </session-config>
  <!--
  <filter>
    <filter-name>HitCounterFilter</filter-name>
    <filter-class>filters.HitCounterFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>HitCounterFilter</filter-name>
    <url-pattern>/index.html</url-pattern>
  </filter-mapping>
  <filter-mapping>
    <filter-name>HitCounterFilter</filter-name>
    <url-pattern>/</url-pattern>
  </filter-mapping>

  <listener>
    <listener-class>listeners.ContextListener</listener-class>
  </listener>
  <listener>
    <listener-class>listeners.ContextListener2</listener-class>
  </listener>
  <listener>
    <listener-class>listeners.SessionListener</listener-class>
  </listener>
  <listener>
    <listener-class>listeners.SessionListener2</listener-class>
  </listener>
  <listener>
    <listener-class>listeners.SessionAttributeListener</listener-class>
  </listener>
  <listener>
    <listener-class>listeners.SessionActivationListener</listener-class>
  </listener>
  -->

<!--
  <security-role>
   <role-name>jsvuser</role-name>
  </security-role>

  <security-constraint>
   <display-name> Jeus WebContainer Example Security Constraint </display-name>
<web-resource-collection>
  <web-resource-name>Protected Area</web-resource-name>
  <url-pattern>/</url-pattern>
  <url-pattern>/index.html</url-pattern>
  <http-method>GET</http-method>
  <http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
        <description>no description</description>
  <role-name>jsvuser</role-name>
</auth-constraint>
    <user-data-constraint>
      <description>no description</description>
      <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
  </security-constraint>
  -->
</web-app>



3) WEBMain.xml

<?xml version="1.0"?>
<!DOCTYPE web-container PUBLIC "-//Tmax Soft., Inc.//DTD WEB Main Config 4.0//EN"
                               "http://www.tmaxsoft.com/jeus/dtd/4.0/web-main-config.dtd">
<web-container>
    <context-group>
        <group-name>MyGroup</group-name>
        <group-docbase>webapps</group-docbase>
        <context>
            <context-name>examples</context-name>
            <context-path>/examples</context-path>
        </context>
        <session-config>
            <shared>true</shared>
            <timeout>20</timeout>
        </session-config>
        <webserver-connection>
            <http-listener>
                <listener-id>http1</listener-id>
                <port>8088</port>
                <output-buffer-size>8192</output-buffer-size>
                <thread-pool>
                    <min>25</min>
                    <max>30</max>
                    <step>2</step>
                    <max-idle-time>1000</max-idle-time>
                </thread-pool>
            </http-listener>
            <webtob-listener>
                <listener-id>webtob1</listener-id>
                <port>9900</port>
                <hth-count>1</hth-count>
                <registration-id>MyGroup</registration-id>
                <thread-pool>
                    <min>4</min>
                    <max>10</max>
                    <step>2</step>
                    <max-idle-time>30000</max-idle-time>
                    <max-wait-queue>4</max-wait-queue>
                </thread-pool>
            </webtob-listener>
        </webserver-connection>
        <logging>
            <error-log>
                <target>stdout</target>
                <buffer-size>0</buffer-size>
                <level>debug</level>
                <valid-day>1</valid-day>
            </error-log>
            <user-log>
                <buffer-size>0</buffer-size>
                <valid-day>1</valid-day>
            </user-log>
            <access-log>
                <buffer-size>0</buffer-size>
                <valid-day>1</valid-day>
                <log-format>
                    <time-format>default</time-format>
                </log-format>
            </access-log>
        </logging>
    </context-group>
</web-container>

-------------------------------------------------------------------------------------

4. webtob3.1.6 설치

- webtob_3.1.6(build3).exe 실행하여 설치

- http://www.tmax.co.kr의 download링크를 클릭 (회원가입필요)

- license를 신청 -> 이메일을 통해 license부여

- 부여받은 license.dat파일을 c:\webtob\license에 복사

-------------------------------------------------------------------------------------

5. C:/jeus/lib/datasource 폴더에 classes12.zip 복사 (오라클 데이터베이스 사용시)

-------------------------------------------------------------------------------------

6. 환경변수 설정

- 자신의 환경에 맞게 설정합니다.

ex) 제 컴의 경우 (오라클8i 사용) : 사용자변수는 모두 삭제, 시스템변수만 설정

1) CLASSPATH

.;C:\servlet.jar;C:\j2sdk1.4.1_07\lib\tools.jar;c:\j2sdk1.4.1_07\jre\lib\rt.jar

2) PATH

C:\oracle\ora81\bin;C:\Program Files\Oracle\jre\1.1.7\bin;C:\Jeus42\lib\etc\ant\bin;C:\Jeus42\bin;C:\Jeus42\lib\system;C:\Jeus42\webserver\bin;C:\webtob\bin;C:\j2sdk1.4.1_07\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\ESTsoft\ALZip

3) WEBTOBDIR

C:\webtob

---------------------------------------------------------------------------------------

7. 시동

1) webtob를 실행합니다.

- webtob 실행 :  wsboot

- webtob 상태 확인 : wsadmin st (-s or -v or -p)

- webtob 종료 : wsdown

2) JEUS를 실행합니다.

- 우선 command창을 두개 띄웁니다.

- 하나의 command창에 "jeus + 엔터"

- 다른 command창에 "jeusadmin 자신의컴퓨터이름" -> "아이디/패스워드 입력" ->"boot"

- 에러가 없다면 실행 성공!!!

- 종료시는 "down -> jeusexit -> exit"

--------------------------------------------------------------------------------------

8. 파일 실제경로 (기본값)

- servlet : C:\Jeus42\webhome\servlet_home\webapps\examples\WEB-INF\classes

- jsp : C:\Jeus42\webhome\servlet_home\webapps\examples

--------------------------------------------------------------------------------------

9 테스팅

- JEUS기본포트는 8088, webtob기본포트는 8080

- 테스트파일은 각자 만들어서 사용하세요.

C:\Jeus42\webhome\servlet_home\webapps\examples
           http://192.168.1.139/examples/DBTest.jsp  --JSP테스트

C:\Jeus42\webhome\servlet_home\webapps\examples\WEB-INF\classes
    http://192.168.1.139/examples/ServletTest  --servlet테스트

--------------------------------------------------------------------------------------

10. 폴더관리

- image, js, css html 등은WebToB홈\docs 에 폴더로 관리

- jsp, servlet은 별도 폴더로 관리 (context 설정문서 참조)

--------------------------------------------------------------------------------------

기타 문의는 http://www.tmax.co.kr을 이용하세요.

이 문서는 JEUS+webtob를 사용하면서 계속 업그레이드하겠습니다.

출처블러그 : http://blog.naver.com/realchoky.do
Posted by [czar]
,