Hi all,
I've just managed accidentally to reproduce the error. I noticed that the class javax.ws.rs.core.Response.Status is defined in both jsr311-api-1.0.jar and jersey-core-1.4.jar but only the class in the jersey-core JAR implements the interface javax.ws.rs.core.Response.StatusType. This is why it is important that the jersey-core JAR appears before the jsr311-api JAR in the classpath. When not the error occurs.
Greetings, Rositsa
On Thu, 20 Jan 2011 12:03:45 +0100, Michael Seiferle michael.seiferle@uni-konstanz.de wrote:
Hi Pushkaraj,
thanks in return for your response. I will see if I can reproduce that in my VM; so far you are the first one to report this issue, I'll let you know what I can find.
Kind regards
Michael
Am 19.01.2011 um 20:19 schrieb Pushkaraj Thorat:
Thanks for your response Michael,
I am using java 1.6
pushkaraj@toothless:~$ java -version java version "1.6.0_17" Java(TM) SE Runtime Environment (build 1.6.0_17-b04) Java HotSpot(TM) Server VM (build 14.3-b01, mixed mode) pushkaraj@toothless:~$
Just to update, the rest server ran successfully on my windows machine. Not sure what problem faced on the linux(ubuntu) machine. I will debug once I get some time.
Thanks, Pushkaraj
On Tue, Jan 18, 2011 at 3:46 AM, Michael Seiferle michael.seiferle@uni-konstanz.de wrote: Dear Pushkaraj,
I am deeply sorry for you having to mess around with that erroneous startup scripts. We fixed them in both the ZIP & DMG distribution, feel free to download them again.
java.lang.IncompatibleClassChangeError
We have been trying to reproduce this error - but to no avail. Your error message might have to do something with your Java Version; please make sure you are running the latest version.
Hope this helps! In case it does not, feel free to ask for more.
Kind regards
Michael
Am 17.01.2011 um 22:00 schrieb Pushkaraj Thorat:
I am doing setup for REST enabled basex database with procedure
mentioned in http://docs.basex.org/wiki/JAX-RX_API URL.
Configuring & starting server and running failed due to class not
found, but later I've modified the ./basexrest script as: (Included all the jars in lib folder)
######START #!/bin/bash # Path to this script PWD=`dirname $0` # Paths to distributed files or source directories BASEX=$PWD/BaseX.jar BASEXAPI=$PWD/../lib/basex-api.jar # Classpath LIB=$PWD/../lib LIB_CP="" for JAR_FILE in $LIB/*.jar do LIB_CP="$LIB/$JAR_FILE:$LIB_CP" done CP=$BASEX:$BASEXAPI:$LIB_CP # Options for virtual machine VM=-Xmx1g # Run REST server java -cp "$CP" $VM org.basex.api.jaxrx.JaxRxServer "$@"
######END
after this, server started successfully, hit the URL -
http://localhost:8984/basex/jax-rx I am getting following exception:
java.lang.IncompatibleClassChangeError: Class
javax.ws.rs.core.Response$Status does not implement the requested interface javax.ws.rs.core.Response$StatusType
at
com.sun.jersey.spi.container.ContainerResponse.getStatus(ContainerResponse.java:548)
at
com.sun.jersey.spi.container.ContainerResponse$CommittingOutputStream.commitWrite(ContainerResponse.java:156)
at
com.sun.jersey.spi.container.ContainerResponse$CommittingOutputStream.write(ContainerResponse.java:133)
at org.basex.io.BufferedOutput.flush(BufferedOutput.java:50) at org.basex.io.PrintOutput.flush(PrintOutput.java:126) at org.basex.data.XMLSerializer.cls(XMLSerializer.java:206) at org.basex.data.Serializer.close(Serializer.java:219) at org.basex.api.jaxrx.BXJaxRx$1.code(BXJaxRx.java:96) at org.basex.api.jaxrx.BXCode.run(BXCode.java:53) at org.basex.api.jaxrx.BXOutput.write(BXOutput.java:53) at
com.sun.jersey.core.impl.provider.entity.StreamingOutputProvider.writeTo(StreamingOutputProvider.java:71)
at
com.sun.jersey.core.impl.provider.entity.StreamingOutputProvider.writeTo(StreamingOutputProvider.java:57)
at
com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:299)