我有一个代码将请求发送到远程服务器以获取响应。虽然回复但是在下面的行返回NPE:
return (String) response.getEntity(String.class);
在OSGI容器上部署此代码后, response.getEntity
返回NullPointerException。它作为独立的Java应用程序
以下依赖项是捆绑包的一部分:
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
<version>1.18</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.18</version>
</dependency>
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-multipart</artifactId>
<version>1.18</version>
</dependency>
堆栈追踪:
java.lang.NullPointerException: null at
javax.ws.rs.core.MediaType.valueOf(MediaType.java:119) at
com.sun.jersey.api.client.ClientResponse.getType(ClientResponse.java:695) at
com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:612) at
com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:586) at
io.swagger.client.ApiInvoker.invokeAPI(ApiInvoker.java:179)
返回的异常如下:
java.lang.NullPointerException:null at javax.ws.rs.core.MediaType.valueOf(MediaType.java:119)at com.sun.jersey.api.client.ClientResponse.getType(ClientResponse.java:695) 在 com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:612) 在 com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:586) 在io.swagger.client.ApiInvoker.invokeAPI(ApiInvoker.java:179)
答案 0 :(得分:0)
一旦这些依赖项作为Felix中的bundle安装,就可以使用。早些时候我试图将这些依赖项嵌入到捆绑包中,这会在为服务选择实际的提供程序实现时给出类加载问题。