2014-02-13 2 views
0

응용 프로그램 서버에 배포 된 동일한 .ear 파일 내에 두 개의 별개의 아카이브가 있습니다. 하나는 .war이고 다른 하나는 .jar입니다. 내가 보호 방법은 proctectedMethod() 불렀다 모두 아카이브 com.me.dummy.MyClass에서Java 메소드 범위 문제

in .jar archive>> com.me.dummy.MyClass 
in .war archive>> com.me.dummy.CLientClass 

에 동일한 패키지 이름이 있습니다. com.me.dummy.CLientClass에서 나는 com.me.dummy.MyClass.proctectedMethod()을 호출합니다.

이는 컴파일시 문제가 발생하지 않지만, 런타임에이 accessError

java.lang.IllegalAccessError 

가 발생하는 이유 이것은 단지 런타임에 IllegalAccessError을 던져 무엇입니까?

감사

답변

1

나는 응용 프로그램 서버 부하 웹 응용 프로그램은 별도의 클래스 로더를 사용하기 때문에 이런 일이 발생 있다고 생각합니다. 전체 엔터프라이즈 애플리케이션에 대해 동일한 클래스 로더를 사용하는 방법은 앱 서버 설명서를 참조해야합니다.