jersey 2库response.getEntity不存在我应该用什么代替

Moh*_*ush 5 netbeans

我的代码

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package beans;

import clients.NewJerseyClient;



import entities.ReservationItem;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.ws.rs.core.GenericType;

import parameters.ReservationParam;
import  org.glassfish.jersey.client.ClientResponse;

/**
 *
 * @author subhi2
 */
@ManagedBean
@SessionScoped
public class PageController implements Serializable {

    public String moveToPage2() {

        NewJerseyClient client = new NewJerseyClient();

        ClientResponse response = client.findInsertedReservationItem(ClientResponse.class, "22", "2010-07-26T11:15:51", "2014-07-26T11:15:51");


        GenericType<List<ReservationItem>> genericType = new GenericType<List<ReservationItem>>() {
        };
// Returns an ArrayList of Players from the web service
        List<ReservationItem> data = new ArrayList<ReservationItem>();



        data = (response.getEntity(genericType));
        return data.toString();
    }
}
Run Code Online (Sandbox Code Playgroud)

line data =(response.getEntity(genericType)); 导致错误

这段代码正在使用旧球衣,但现在我该怎么做才能解决这个错误?

Her*_*che 2

对于你所问的问题,我已经替换了这个

response.getEntity(String.class);
Run Code Online (Sandbox Code Playgroud)

这样

response.getEntityStream().toString();
Run Code Online (Sandbox Code Playgroud)

但可能还有与 Jersey 2 相关的另一个问题,我可以通过替换这些导入来使其工作

import jersey.spi.container.servlet.ServletContainer;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
Run Code Online (Sandbox Code Playgroud)

通过这些

import org.glassfish.jersey.servlet.ServletContainer;
import org.glassfish.jersey.client.ClientResponse;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
Run Code Online (Sandbox Code Playgroud)

在代码中(因为我使用的是 Jetty)我必须替换它

servletHolder.setInitParameter("com.sun.jersey.config.property.packages", 
                               "resources");
Run Code Online (Sandbox Code Playgroud)

这样

servletHolder.setInitParameter("jersey.config.server.provider.packages", 
                               "resources");
Run Code Online (Sandbox Code Playgroud)

和这个

WebResource webResource = client.resource("http://url_u_want_to_connect");
ClientResponse response = webResource.accept("application/json")
Run Code Online (Sandbox Code Playgroud)

这样

WebTarget webTarget = client.target("http://url_u_want_to_connect");
ClientResponse response = webTarget.request("application/json")
Run Code Online (Sandbox Code Playgroud)

最后,这里是“最新”文档的链接(关于 Jersey 2.x,2013 年)

https://jersey.java.net/documentation/latest/user-guide.html