2013-03-14 64 views
0

我想在我的客户端应用程序中执行PUT/POST来更新我的数据库。 我正在使用HttpClient。POST/PUT在HttpClient

下面的方法是更正确的,为什么它们都不起作用?

第一:HTTP/1.1 415不支持的媒体类型

List <NameValuePair> nvps = new ArrayList <NameValuePair>(); 

    nvps.add(new BasicNameValuePair("Accept", "application/json")); 
    nvps.add(new BasicNameValuePair("Content-Type", "application/json")); 

    nvps.add(new BasicNameValuePair("userID", "user5")); 
    nvps.add(new BasicNameValuePair("FirstName", "teste")); 
    nvps.add(new BasicNameValuePair("LastName", "2")); 

    httpPost.setEntity(new UrlEncodedFormEntity(nvps)); 

二:HTTP/1.1 500内部服务器错误

httpPost.setHeader("Accept", "application/json"); 
    httpPost.setHeader("Content-type", "application/json"); 

    JSONObject obj = new JSONObject(); 
    obj.put("userID", "user5"); 
    obj.put("FirstName", "teste"); 
    obj.put("LastName", "2"); 

    httpPost.setEntity(new StringEntity(obj.toString(), "UTF-8")); 

最后我做:HttpResponse response = httpclient.execute(httpPost);

或者问题可能是URL ...我有:HttpPost httpPost= new HttpPost("http://localhost:8080/LULServices/webresources/entities.user"); 我想添加一个新的用户,在我的用户服务(用户表从de DataBase)

谢谢。

回答

0

我刚刚通过将第一个大写字母改为小写解决了第二种方法的问题。真是愚蠢的错误.. 它被定义为'firstName',我写它,因为它写在数据库表。