본문 바로가기

IT-Consultant

local class incompatible 뭐가 호환이 안된다는거야???

The WebLogic Server did not start up properly.
java.io.InvalidClassException: javax.management.MBeanAttributeInfo; local class incompatible: stream classdesc serialVersionUID = 7043855487133450673, local class serialVersionUID = 8644704819898565848
 at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
 at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
 at java.io.ObjectInputStream.readClassDesc(Unknown Source)
 at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
 at java.io.ObjectInputStream.readClassDesc(Unknown Source)
 at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
 at java.io.ObjectInputStream.readObject0(Unknown Source)
 at java.io.ObjectInputStream.readArray(Unknown Source)
 at java.io.ObjectInputStream.readObject0(Unknown Source)
 at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
 at java.io.ObjectInputStream.readSerialData(Unknown Source)
 at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
 at java.io.ObjectInputStream.readObject0(Unknown Source)
 at java.io.ObjectInputStream.readObject(Unknown Source)
 at weblogic.management.internal.TypesHelper.getMBeanInfo(TypesHelper.java:274)
 at weblogic.management.internal.TypesHelper.getAdminOrConfigMBeanInfo(TypesHelper.java:384)
 at weblogic.management.internal.ConfigurationMBeanImpl.<init>(ConfigurationMBeanImpl.java:137)
 at weblogic.management.AdminServer.<init>(AdminServer.java:59)
 at weblogic.management.AdminServerAdmin.initialize(AdminServerAdmin.java:250)
 at weblogic.t3.srvr.T3Srvr.initializeHere(T3Srvr.java:770)
 at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:669)
 at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:343)
 at weblogic.Server.main(Server.java:32)

InvalidClassException..
serialVersionUID <- 요건 jdk 1.5 버전에서 권장하는 방법으로 클래스가 시리얼라이즈를 implements 하는 경우 임의의 수를 선언하는것으로 이 값이 다르면 이름이 같은 클래스일지라도 다른 클래스로 인식하여 서로 데이터를 주고받을수 없는.. 뭐.. 그런 방식입니다.

웹로직 8.1의 경우 bea 폴더 밑에 설치된 jdk1.4 버전을 사용하면 된다.
myeclipse에서 APP Server에 대한 JDK를 별도로 설정하는 부분이 있다. 이 곳을 수정해주면 말끔히 에러가 해결된다.