2015-07-20 122 views
0

我有一個代碼將請求發送到遠程服務器以獲取響應。雖然返回的響應,但在下面一行返回NPE:Jersey客戶端返回MediaType上的NullPointerException

return (String) response.getEntity(String.class); 

response.getEntity返回NullPointerException異常一旦部署在OSGi容器此代碼。它可以作爲一個獨立的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在 j avax.ws.rs.core.MediaType.valueOf(MediaType.java:119)at com.sun.jersey.api.client.ClientResponse.getType(ClientResponse.java:695) at com.sun.jersey.api客戶端響應.getEntity(ClientResponse.java:612) at java:179)

+0

返回的例外是顯示java.lang.NullPointerException:空 \t在javax.ws.rs.core.MediaType.valueOf(MediaType.java:119) \t在com.sun.jersey.api.client.ClientResponse。 getType(ClientResponse.java:695) \t at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:612) \t at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse。 Java的:586) \t在io.swagger.client.ApiInvoker.invokeAPI(ApiInvoker.java:179) –

+1

我想你會需要提供比這更多的信息,以獲得一個有意義的/正確的答案。 –

回答

0

一旦這些依賴關係在Felix中作爲一個包安裝,它就可以工作。早些時候,我試圖將這些依賴關係嵌入到正在爲服務提供實際提供者實現的同時給類加載問題的包中。