2016-09-12 84 views
1

我正在創建restful webservice,我試圖讓JSON響應,但得到消息編寫器沒有發現異常。在澤西網站提到使用Jakson依賴於應用程序/ JSON,所以我用它仍然得到相同的錯誤。對於響應類型application/xml,它工作正常。 這些在POM可依賴性,沒有發現仍然得到消息作家exception.Can請人幫忙 -MessageBodyWriter未找到媒體類型=應用程序/ JSON,添加了Jakson依賴仍然問題persisit

<dependency> 
     <groupId>org.glassfish.jersey.media</groupId> 
     <artifactId>jersey-media-json-jackson</artifactId> 
     <version>2.2</version> 
    </dependency> 
    <dependency> 
      <groupId>org.glassfish.jersey.containers</groupId> 
      <artifactId>jersey-container-servlet</artifactId> 
      <version>2.2</version> 
     </dependency> 

     <dependency> 
      <groupId>org.glassfish.jersey.test-framework.providers</groupId> 
      <artifactId>jersey-test-framework-provider-grizzly2</artifactId> 
      <version>2.2</version> 
     </dependency> 
public class UserServiceTest extends JerseyTest { 

@Override 
protected Application configure(){ 
    ResourceConfig resourceConfig=new ResourceConfig(UserService.class); 
    return resourceConfig; 
} 
@Test 
public void test(){ 
    String output=target("https://stackoverflow.com/users/test").request().get(String.class); 
    System.out.println(output); 
    //assertEquals("abc",output); 
    Assert.assertEquals("abc",output); 
} 

}

+0

您需要在您的應用程序中註冊'JacksonFeature'。這只是在2.9之前需要的 –

+0

@peeskillet感謝評論.pls建議如何做到這一點?我使用拋棄。它給了同樣的錯誤 – Raju

+0

顯示您的應用程序配置,無論是web.xml或Java配置 –

回答

1

澤西島2.9之前,您需要註冊JacksonFeature(其中後,它是自動註冊)。在你的情況正好與ResourceConfig

resourceConfig.register(JacksonFeature.class) 

ResourceConfig僅用於配置服務器端註冊。對於客戶端,您可以註冊

@Override 
public void configureClient(ClientConfig config) { 
    config.register(JacksonFeature.class)l 
} 

在您的JerseyTest

+0

謝謝曼非常感謝。 – Raju

相關問題