休息服务Java,使用jersey依赖的错误

时间:2017-07-29 22:46:48

标签: eclipse apache rest tomcat jersey

我开始使用Java和休息服务,我使用GET方法创建了一个休息服务,这个方法返回一个带有他的属性的UserVO,我使用setMethods设置属性值和随机值并返回对象但这不能将映射对象映射到json球衣我使用tomcat 6,JDK 1.8.0_121和eclipse并显示此错误:

com.sun.jersey.spi.container.ContainerResponse write
GRAVE: A message body writer for Java class Autoconsulta.ValueObject.UsuarioVO, and Java type class Autoconsulta.ValueObject.UsuarioVO, and MIME media type application/json was not found.
The registered message body writers compatible with the MIME media type are:
application/json ->
  com.sun.jersey.json.impl.provider.entity.JSONJAXBElementProvider$App
  com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$App
  com.sun.jersey.json.impl.provider.entity.JSONObjectProvider$App
  com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider$App
  com.sun.jersey.json.impl.provider.entity.JSONListElementProvider$App

VO

public class UsuarioVO {

    private String rut;
    private boolean isValid;

    public String getRut() {
        return rut;
    }
    public void setRut(String rut) {
        this.rut = rut;
    }
    public boolean isValid() {
        return isValid;
    }
    public void setValid(boolean isValid) {
        this.isValid = isValid;
    }

}

我的服务:

@GET
@Path("/getUser")
@Produces({MediaType.APPLICATION_JSON})
public UsuarioVO getUsuario() {

    UsuarioVO u = new UsuarioVO();
    u.setRut("123444");
    u.setValid(true);

    return u;
}

web xml

<servlet>
 <servlet-name>Servicio_Rest</servlet-name>
 <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
 <init-param>
    <param-name>com.sun.jersey.config.property.packages</param-name>
    <param-value>Autoconsulta.ws.rest.service</param-value>
 </init-param>
 <init-param>
    <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
    <param-value>true</param-value>
 </init-param>
 <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
  <servlet-name>Servicio_Rest</servlet-name>
  <url-pattern>/services/*</url-pattern>
</servlet-mapping>

pom xml

 <dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-core</artifactId>
    <version>1.19</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-json</artifactId>
    <version>1.19</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-servlet</artifactId>
    <version>1.19</version>
</dependency>

0 个答案:

没有答案