[英]HTTP request doesn't work with a paricular rest
我正在制作一个充满各种休息服务的应用程序,所以我创建了一个一对一的 HTTP 类,以允许客户端应用程序通过休息不断向服务器应用程序询问信息
public HttpURLConnection HTTPSENDJSON(String urlAPI,String out,String requestmethod) throws IOException {
URL url = new URL(urlAPI);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000);
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Accept", "application/json");
conn.setRequestMethod(requestmethod);
conn.setDoOutput(true);
conn.setDoInput(true);
OutputStream os = conn.getOutputStream();
System.out.println(out);
os.write(out.getBytes());
os.flush();
os.close();
return conn;
urlAPI 是所需的 URL,一个字符串是 JSON 字符串(我使用的是 GSON),而 requestmethod 是一个字符串,以便从 PUT\\POST\\GET\\PATCH 切换。
所以,正如我所写的,如果我需要从 DB\\insert a new record ATM 检索信息,我的客户端应用程序调用服务器,该服务器调用 EJB 以便 CRUD 信息,这一切都可以。 这是调用上层方法的客户端方法(HTTPSENDJSON)
public String modifica() throws IOException {
Universal_HTTPREQUEST httprequest = new Universal_HTTPREQUEST();
String url= "http://localhost:8080/ModuloWebClientNuovo/rest/clientela/modifica/account/"+ac.getId()+"";
Gson g = new Gson();
String out=g.toJson(ac, Account.class);
httprequest.HTTPSENDJSON(url, out,"PUT");
这是工作(至少与邮递员)服务
@PUT
@Path("modifica/account/{id}")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response modificaaccount(@PathParam("id") int id,Account a) {
System.out.println("i'm inside the api and i wrote: "+ a.toString());
ac.updateAccount(a);
return Response.status(200).entity(a).build() ;
}
客户端甚至不调用服务器,但只有这个特定的休息,其他工作正常。
更新帐户 EJB 是:
@Stateless
public class AccountEJB implements IAccountCrud {
@EJB
Iconnessioni x;
@Override
public void updateAccount(Account account) {
EntityManager entityManager=x.apriconnessione();
entityManager.merge(account);
x.chiudiconnessione(entityManager);
}
}
修复了一个新的从头开始的野蝇
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.