2011-11-11 3 views
1

인스턴스 변수와 두 개의 공용 메소드가있는 상태 비 저장 세션빈이 있습니다. 아래는 가상 코드입니다.무 상태 세션빈의 인스턴스 변수

private int instanceVar; 

public void methodA(int x) { 
    instanceVar = x; 
} 

public void methodB() { 
    print instanceVar; 
} 

두 메소드는 모두 클라이언트에서 차례로 호출됩니다. 클라이언트 코드와 상태 비 저장 세션 빈은 Websphere에 전개된다. MethodB에서 인쇄 된 instanceVar의 값은 Application Server의 단일 인스턴스 또는 2 개의 Application Server가있는 클러스터 인 경우 methodA와 동일합니다. 그러나 3 개의 Application Server가있는 환경에서 인쇄 된 instanceVar의 값은 이전 값을 포함합니다. 누구든지 나를 위해이 문제를 설명 할 수 있습니까?

미리 감사드립니다.

감사합니다, Sudhu

답변

0

심지어 하나의 애플리케이션 서버에서 EJB 컨테이너는 무 상태 세션 빈의 여러 인스턴스를 만들 수 있습니다. 따라서 의사 코드에 표시된대로 인스턴스 속성을 사용하면 예상 된 결과를 얻을 수 있습니다.