달력

7

« 2019/7 »

  •  
  • 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
  • 29
  • 30
  • 31
  •  
  •  
  •  
2017.01.06 09:40

Spring 컨트롤러에서 트랜잭션 사용하기 WEB2017.01.06 09:40

//트랜잭션 기능 추가 시 추가해야 될 목록들

import org.springframework.transaction.TransactionDefinition;

import org.springframework.transaction.TransactionStatus;

import org.springframework.transaction.support.DefaultTransactionDefinition;


@RequestMapping(value="/Main.do", method=RequestMethod.GET)

public @ResponseBody List Main(ModelMap model, MVoidCostVO vo) throws Exception{

List<HashMap> result = new ArrayList<HashMap>();

HashMap<String, String> hm = new HashMap<String, String>();


DefaultTransactionDefinition def = new DefaultTransactionDefinition();

def.setName("MPreferReg-transation");

def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);

TransactionStatus status = transactionManager.getTransaction(def);

Boolean isSucc = true;

try{

//같은 트랜잭션으로 사용할 부분을 여기서 사용한다.


//논리적으로 오류가 발생 시 isSucc값을 false 로 반환한다.

}catch(Exception e){

isSucc = false;

transactionManager.rollback(status);    //오류 시 롤백

}finally{

if( isSucc ){

transactionManager.commit(status);  //오류가 없을 경우 커밋

}

}

}


     result.add(hm);

return result;

}

'WEB' 카테고리의 다른 글

Spring 컨트롤러에서 트랜잭션 사용하기  (0) 2017.01.06
Posted by 현자

log4j.properties 를 다음과 같이 수정한다.


# 기존에 정의 되어 있을 경우 stdout 만 추가한다.

log4j.rootLogger=stdout


# Console output

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%5p[%t] -%m%n

Posted by 현자

http.m 파일에


*ACCESS 

access_allow     Order = "allow,deny", allow = "123.123.123.123"



*DIRECTORY

def DIRECTORY = "경로명", AccessName = access_allow


추가/수정을 하고 wscfl -i http.m 으로 컴파일 한다.


wsdown, wsboot로 웹서버를 재구동 하면 반영 됨



해당 경로로의 접속은 허용된 아이피만 접속이 가능


비허용 아이피에서 접속 시 403 Forbidden 에러가 뜬다.

Posted by 현자
2013.06.13 15:49

permgen space 부족하다고 나올 경우 WEB/Jeus2013.06.13 15:49

JEUSMain.xml 에 빨간색으로 적혀진 부분을 추가한다.


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

<jeus-system xmlns="http://www.tmaxsoft.com/xml/ns/jeus">

    <node>

....

   <command-option>

    -Xms512m -Xmx512m

    -XX:PermSize=128m -XX:MaxPermSize=128m

   </command-option>

...

    </node>

</jeus-system>


Posted by 현자
2012.03.21 09:54

제우스(Jeus) 라이센스 확인 WEB/Jeus2012.03.21 09:54

1. 라이센스 위치

    $JEUS_HOME/license

    예) 제우스 홈이 /home/jeus/jeus42 라면

    /home/jeus/jeus42/license

 2. 라이센스 확인

     1) 일수확인

     jeusadmin -licensedue

     결과)

     [ErrorMsgManager] Message Manager is initialized
    [JeusCommander] 87 days left

     87일이 남았음을 확인 할 수 있다

  

    2) 일자확인 (라이센스 정보 확인)

    jeusadmin -licenseinfo

    결과)

    ================ JEUS LICENSE INFORMATION ===================
    === EDITION : JEUS DEMO
    === DUE-DAY : 2006/11/30
    =============================================================

    데모 버전이며 만료일이 2006.11.30일임을 알 수 있다.

※ 적용

원문 : http://blog.naver.com/on2uu?Redirect=Log&logNo=80028318001

Posted by 현자
2012.03.21 09:48

제우스 부팅 확인 WEB/Jeus2012.03.21 09:48

1. JEUS 프로세서

#>ps -ef | grep java

jeus4     7745  7744 15 09:08 pts/0    00:00:10 java -server -Xbootclasspath/p:/tmax/jeus4/lib/system/extension.jar:/tmax/jeus4/lib/system/jaas.jar -classpath /tmax/jeus4/lib/system/bootstrap.jar -Djeus.session.version=SOCKET -Djava.library.path=/tmax/jeus4/lib/system::/tmax/jeus4/lib/system:/tmax/jeus4/lib/system:/tma

jeus4     7804  7745 20 09:08 pts/0    00:00:12 /usr/local/j2sdk1.4.2_07/bin/java -server -Dcontainer1 -Xbootclasspath/p:/tmax/jeus4/lib/system/extension.jar:/tmax/jeus4/lib/system/jaas.jar -classpath /tmax/jeus4/lib/system/bootstrap.jar -Djava.security.policy=/tmax/jeus4/config/security/policy -Dsun.boot.library.path=

=> java - server -Xbootclasspath 라고 뜬 것이 jeus manager
    java - server -Dcontainer1 이라고 뜬 것이 jeus container  

위에서 진하게 표시해 놓은 것과 같이 제우스 매니저의 PID 와 컨테이너의 PPID 가 동일한 점이 특징이다.
   이것은 제우스 매니저가 제우스 컨터이너를 fork 시켜서 구동시켰음을 알 수 있다. 둘이 서로 상당부분의 메모리를 공유(COPY)하면서 한 몸이라고 생각하면 쉬울 것이다.

java 로 필터링 했을 때 프로세스가 너무 많다면 다음과 계정id로 한번 더 grep 처리한다.

#ps -ef | grep java | grep jeus4

2. 프로프레임

참고로 프로프레임 환경하에서 구동되는 제우스( 프로프레임 스튜디오의 서버 부분 처리) 가 제대로 떠 있는 지 확인할 때 위의 ps 명령을 많이 사용하게 된다.

#>ps -ef | grep java | grep "tmax "

tmax 3138116 3191078   0  23:00:09      -  0:35 /usr/java5/bin/java -Djeus.dispatcher.blocking=true -Xmx512m -Xbootclasspath/p:/tmax/jeus/cbs/lib/system/extension.jar:
tmax 3691516 3138116   6  23:00:17      - 10:39 /usr/java5/jre/bin/java -Dcontainer1 -Xbootclasspath/p:/tmax/jeus/cbs/lib/system/extension.jar
tmax 3592658       1   0  23:00:09      -  3:04 java -cp ./logserver.jar -Dfile.encoding=EUC-KR

여기서 3개가 걸려 나오는데 logserver 가 하나 더 보인다.  이 logserver가 스튜디오와 서버간의 통신을 담당해 주는데 스튜디오에서 컴파일, dlupdate 등의 명령을 내릴 때 이 로그서버를 통해서 명령이 서버로 전달된다.

3. WebtoB 프로세서

WebtoB의 경우 여러 프로세스가 기동된다.

엔진 프로세스라 할수 있는 것으로는 hth, htl, wsm의 세 개가 있다.
- hth: client handler 1개 이상
- htl: listener 1개
- wsm: manager 1개

- hths: client handler SSL 1개 이상 

그외의 프로세스는 업무를 처리하는 프로세스들인데
- htmls: html/image/css/js/file 등을 처리하는 프로세스
- cgis: CGI 를 처리하는 프로세스
- ssis: SSI를 처리하는 프로세스
위의 것들은 MinProc/MaxProc에 설정된 수만큼 기동이 된다.

apache는 동일한 프로세스가 여러개 기동 되는 방식이라면, WebtoB는 기능을 분담한 프로세스가 각각 기동이 되는 것이다.

#>ps -ef | grep wsm
    tmax  741744       1   0  9월  2일      -  1:07 wsm -I proframe_1016314 -b 1016314
#>ps -ef | egrep "hth|htmls"
    tmax 1048576       1   8  9월  2일      - 48:46 hth -I proframe_1016314 -b 1016314
    tmax 1474764       1   0  9월  2일      -  0:00 htmls -I proframe_1016314 -b 1016314 -s html
    tmax 1925234       1   0  9월  2일      -  0:00 htmls -I proframe_1016314 -b 1016314 -s html
    tmax 2015444       1   0  9월  2일      -  0:00 htmls -I proframe_1016314 -b 1016314 -s html
    tmax 2064542       1   0  9월  2일      -  0:00 htmls -I proframe_1016314 -b 1016314 -s html

4.  Windows 환경이라면

작업관리자를 통해 java 프로세스 확인한다.



원문 : http://pangate.com/140

'WEB > Jeus' 카테고리의 다른 글

permgen space 부족하다고 나올 경우  (0) 2013.06.13
제우스(Jeus) 라이센스 확인  (0) 2012.03.21
제우스 부팅 확인  (0) 2012.03.21
[JEUS] 컨테이너 한개만 내리기  (0) 2011.02.25
JEUS JDK 버전 변경하기  (0) 2011.02.24
제우스 수동으로 서블릿 컴파일  (0) 2010.07.21
Posted by 현자
2011.02.25 09:32

[JEUS] 컨테이너 한개만 내리기 WEB/Jeus2011.02.25 09:32


ja  
    => 컨테이너를 설정할 수 있는 모드로 변경
conlist    
    => 구동 되어진 컨테이너 리스트를 볼 수 있다.
downcon 컨테이너명
    => 컨테이너를 하나씩 종료한다(컨테이너명을 적지 않으면, 전체 컨테이너를 다 종료 시킨다.)
startcon 컨테이너명 
    => 컨테이너를 하나씩 구동한다

'WEB > Jeus' 카테고리의 다른 글

제우스(Jeus) 라이센스 확인  (0) 2012.03.21
제우스 부팅 확인  (0) 2012.03.21
[JEUS] 컨테이너 한개만 내리기  (0) 2011.02.25
JEUS JDK 버전 변경하기  (0) 2011.02.24
제우스 수동으로 서블릿 컴파일  (0) 2010.07.21
Jeus 및 WebToB 버전 확인  (0) 2010.07.05
Posted by 현자
2011.02.24 18:07

JEUS JDK 버전 변경하기 WEB/Jeus2011.02.24 18:07

JEUS_HOME
밑의 \bin\jeus.properties.cmd 파일을 열어

rem set up JAVA_HOME
SET JAVA_HOME=C:\jdk1.6.0_17
SET JDK_HOME=%JAVA_HOME%

파란색 밑 줄 그은 부분을 변경할 곳으로 설정하고
jeus.properties.cmd 파일을 실행 시키면 적용된다.

'WEB > Jeus' 카테고리의 다른 글

제우스 부팅 확인  (0) 2012.03.21
[JEUS] 컨테이너 한개만 내리기  (0) 2011.02.25
JEUS JDK 버전 변경하기  (0) 2011.02.24
제우스 수동으로 서블릿 컴파일  (0) 2010.07.21
Jeus 및 WebToB 버전 확인  (0) 2010.07.05
WebtoB에서 사용하는 MimeType  (0) 2010.06.14
Posted by 현자
2010.07.21 09:37

제우스 수동으로 서블릿 컴파일 WEB/Jeus2010.07.21 09:37


UNIX 
.../WEB-INF/classes 아래서
javac -classpath .:$JEUS_HOME/classes:$JEUS_HOME/lib/system/jeus.jar -d . *.java

WIN
javac -classpath .;%JEUS_HOME%\classes;%JEUS_HOME%\lib\system\jeus.jar -d . *.java
Posted by 현자
2010.07.05 14:21

Jeus 및 WebToB 버전 확인 WEB/Jeus2010.07.05 14:21

JEUS      
:  jeusadmin -fullversion

WebToB
: wscfl -version 
Posted by 현자