본문 바로가기

WEB & WAS/WebLogic

[WebLogic] Context간 세션 공유

반응형

개요

기본적으로 세션은 Context(웹모듈)단위로만 공유가 가능하다. Weblogic에서 서로 다른 Context간에 세션을 공유하는 방법에 대해서 알아보자

테스트 환경

Weblogic 12C

 

Context간에 세션 공유를 하기 위해서는 애플리케이션을 EAR 형태로 배포해야만 한다.

여기에 myapp.war, myapp2.war 라는 웹모듈이 있을 경우 두 웹모듈사이에 세션을 공유하기 위해서는 META-INF/weblogic-application.xml <session-descriptor> 절 안에 <sharing-enabled>의 값을 true 설정 하면 된다

[그림 1] EAR 구조

 

1. EAR 파일 생성

shell> mkdir EAR

shell> cd EAR

shell> cp myapp.war EAR/

shell> cp myapp2.war EAR/

shell> mkdir META-INF

shell> cd META-INF

shell> vi weblogic-application.xml

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-application xmlns="http://xmlns.oracle.com/weblogic/weblogic-application"                                                                                        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                                                                                    xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-application                                                            http://xmlns.oracle.com/weblogic/weblogic-application/1.3/weblogic-application.xsd">       
    <application-param>
        <param-name>webapp.encoding.default</param-name>
        <param-value>UTF-8</param-value>
    </application-param>
    <session-descriptor>
        <sharing-enabled>true</sharing-enabled>
    </session-descriptor>
</weblogic-application>

shell> jar cvf  sharedContext.ear META-INF/ myapp.war myapp.war

생성된 EAR 어플리케이션 파일을 배포하면 된다.

참고 : [WebLogic] 어플리케이션 배포

반응형