【发布时间】:2015-01-05 23:41:19
【问题描述】:
我创建了一个使用 REST 服务器进行 CRUD 操作的 WebApp。我使用 java Jersey 和 gradle。 当我进行 POST 操作时,我以 JSON 格式发送对象,如下所示:
ToDo t = new ToDo(...); // Object to be posted
Response response = client.target("http://localhost:8091/todos")
.request(MediaType.APPLICATION_JSON)
.post(Entity.entity(t, MediaType.APPLICATION_JSON));
但它会抛出异常:
org.glassfish.jersey.message.internal.MessageBodyProviderNotFoundException: MessageBodyWriter not found for media type=application/json, type=class todos.ToDo, genericType=class todos.ToDo.
我的 build.gradle:
buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath (group: 'com.sahlbach.gradle', name: 'gradle-jetty-eclipse-plugin', version: '1.9.+')
}
}
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'jettyEclipse'
apply plugin: 'eclipse'
apply plugin: 'eclipse-wtp'
repositories {
mavenCentral()
}
dependencies {
providedCompile 'javax.servlet:javax.servlet-api:3.0.1'
compile 'org.glassfish.jersey.core:jersey-client:2.3.1'
}
【问题讨论】:
标签: java json rest jersey jax-rs