java – 来自“com.sun.*”和“sun.*”包的类不应该用于Jersey客户端的Sonar问题

我正在使用泽西客户端进行休息通话.我的代码导入是:

import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;

一切都很好.我正在使用Sonar检查我的代码质量.

声纳显示出一个主要问题:

Classes from “com.sun.” and “sun.” packages should not be used

这实际上是使用sun的类吗?

如果是,有哪些替代方案?

解决方法:

最好迁移到JAX-RS 2.0客户端类.但是有些重构是必要的.请参阅migration guide.例如,如果您之前这样写过:

Client client = Client.create();
WebResource webResource = client.resource(restURL).path("myresource/{param}");
String result = webResource.pathParam("param", "value").get(String.class);

你应该像这样写:

Client client = ClientFactory.newClient();
WebTarget target = client.target(restURL).path("myresource/{param}");
String result = target.pathParam("param", "value").get(String.class);
上一篇:如何抑制’common-java’规则的警告


下一篇:java – 安全 – 数组直接存储