使用jersey包装的泽西客户端:得到了ExceptionInInitializerError。为什么?

时间:2011-12-20 14:07:22

标签: java python web-services jersey

我正在使用jython(2.5.2)和球衣。使用jersey连接到WebService的简单客户端代码:

import sys
sys.path.append("/usr/lib/jersey/jersey-core-1.11.jar")
sys.path.append("/usr/lib/jersey/jersey-client-1.11.jar")

import com.sun.jersey.api.client.ClientResponse as ClientResponse
import com.sun.jersey.api.client.config.DefaultClientConfig as DefaultClientConfig
import com.sun.jersey.api.client.Client as Client
import javax.ws.rs.core.UriBuilder as UriBuilder
import javax.ws.rs.core.MediaType as MediaType

def getBaseURI():
    return UriBuilder.fromUri("http://127.0.0.1:8080/WebService").build()

config = DefaultClientConfig().create(config)
client = Client.create(config)
service = client.resource(getBaseURI()).path("path");
builder = service.path("start").accept(MediaType.APPLICATION_XML);
response = builder.put(ClientResponse.__class__, input);
result = response.getEntity(ClientResponse.__class__);

我收到以下异常:

Traceback (most recent call last):
  File "test2.py", line 21, in <module>
    response = builder.put(ClientResponse.__class__, input);
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.getMessageBodyWriterMediaTypes(MessageBodyFactory.java:444)
    at com.sun.jersey.api.client.RequestWriter.getMediaType(RequestWriter.java:324)
    at com.sun.jersey.api.client.RequestWriter.writeRequestEntity(RequestWriter.java:282)
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:204)
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:147)
    at com.sun.jersey.api.client.Client.handle(Client.java:648)
    at com.sun.jersey.api.client.WebResource.handle(WebResource.java:670)
    at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74)
    at com.sun.jersey.api.client.WebResource$Builder.put(WebResource.java:533)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)

java.lang.ExceptionInInitializerError: java.lang.ExceptionInInitializerError

为什么呢?我将不胜感激任何帮助, Hagay。

0 个答案:

没有答案