I am new to JAXB and have a lot to learn about it. I am trying to create an Unmarshaller within my Servlet's DoGet method however everytime it executes I get an IncompatibleClassChangeError. I am using Oracle9iAS as my servlet container and have included both the bgm.ser and jaxb.properties files in my classpath also my code is compiled using jwsdp-1.2.
Here's the code followed by the exception. Can some clue me in as to what's going on?
public void doPost(HttpServletRequest request, HttpServletResponse response)
{
.
.
.
try
{
ObjectFactory of = new ObjectFactory();
JAXBContext jc = ObjectFactory.newInstance("agilent.dev.ne",
this.getClass().getClassLoader());
Unmarshaller um = jc.createUnmarshaller();
}
catch (JAXBException je)
{
je.printStackTrace();
}
The Error:
java.lang.IncompatibleClassChangeError: Implementing class
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.defineClass(ContextClassLoader.java:1102)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.findClass(ContextClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.loadClass(ContextClassLoader.java:135)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.defineClass(ContextClassLoader.java:1102)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.findClass(ContextClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at com.evermind[Oracle9iAS (9.0.3.0.0) Containers for J2EE].naming.ContextClassLoader.loadClass(ContextClassLoader.java:135)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at com.dab.impl.runtime.DefaultJAXBContextImpl.createUnmarshaller(DefaultJAXBContextImpl.java:118)
at demo.myServlet.doPost(myServlet.java:82)
Again thanks for your help!
Dwayne Burns