Java Jersey服务-getEntity不工作
以下服务不起作用: XML返回Java Jersey服务-getEntity不工作,java,web-services,jersey,jersey-client,Java,Web Services,Jersey,Jersey Client,以下服务不起作用: XML返回 <prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> <order> <id> <![CDATA[ 1 ]]> </id> <date_add> <![CDATA[ 2014-08-22 16:26:15 ]]> </date_add> </order> </prestashop> Ja
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<order>
<id>
<![CDATA[ 1 ]]>
</id>
<date_add>
<![CDATA[ 2014-08-22 16:26:15 ]]>
</date_add>
</order>
</prestashop>
Java客户端
import java.net.URI;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.UriBuilder;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.api.client.config.ClientConfig;
import com.sun.jersey.api.client.config.DefaultClientConfig;
import com.sun.jersey.api.client.filter.HTTPBasicAuthFilter;
public class ClienteRest {
public static void main(String[] args) {
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
Pedido pedido = new Pedido();
client.addFilter(new HTTPBasicAuthFilter("WZWVR59997VL4BMKDV99C7GA1RBYGGBF", ""));
WebResource service = client.resource(getBaseURI());
// Get XML
System.out.println(service.path("orders").path("1").accept(MediaType.TEXT_XML).get(ClientResponse.class));
ClientResponse response = service.path("orders").path("1").accept(MediaType.TEXT_XML).get(ClientResponse.class);
// Get XML for application
Pedido oPedido = response.getEntity(pedido.getClass());
System.out.println(oPedido.total_paid);
}
private static URI getBaseURI() {
return UriBuilder.fromUri("http://WZWVR59997VL4BMKDV99C7GA1RBYGGBF@example.com/api").build();
}
}
这是java程序的输出
返回一个200 OK的响应状态
空的
当getEntity始终返回null时,我想恢复XML的对象类顺序不起作用。VO类似乎与XML不匹配,XML似乎表示以下VO:
@XmlRootElement(name="prestashop")
public class Pedido {
private Order order;
public Order getOrder(){
return order;
}
public void setOrder(Order o){
order = o;
}
}
public class Order {
@XmlCDATA public Integer id=null;
@XmlCDATA public String date_add=null;
}
@XmlRootElement(name="prestashop")
public class Pedido {
private Order order;
public Order getOrder(){
return order;
}
public void setOrder(Order o){
order = o;
}
}
public class Order {
@XmlCDATA public Integer id=null;
@XmlCDATA public String date_add=null;
}