2017-04-07 65 views
0

我想更新从表名广告的atributte ad_stat,但我得到的错误时:错误500更新数据

500 Could not parse multipart servlet request; nested exception is javax.servlet.ServletException:org.apache.tomcat.util.http.fileupload.FileUploadBase$InvalidContentTypeException: the request doesn't contain a multipart/form-data or multipart/mixed stream, content type header is null" 

这里是更新数据

@ApiOperation(value = "deactiveAd", nickname = "deactive Ad") 
@RequestMapping(method = RequestMethod.GET, path = "ads/deactive", produces 
= "application/json") 
@ApiResponses(value = { 
      @ApiResponse(code = 200, message = "Success"), 
      @ApiResponse(code = 401, message = "Unauthorized"), 
      @ApiResponse(code = 403, message = "Forbidden"), 
      @ApiResponse(code = 404, message = "Not Found"), 
      @ApiResponse(code = 500, message = "Failure") 
    }) 
    public Response deactiveAd(@RequestPart(name = "adsId", required = true) 
int ad_id){ 
      Response response = new Response(); 
      DbHandler db = new DbHandler(); 
      if(db.getResult() == 0){ 
        try{ 
          String sql = "UPDATE advert SET ad_stat = false 
WHERE ad_id = "+ad_id+";"; 
          if(!db.execute(sql)) { 
          response.setStatus("0"); 
        }else{ 
          response.setStatus("3"); 
        } 
          db.closeStatement(); 
          db.closeConnection(); 
        }catch(SQLException e) { 
          response.setStatus("1"); 
        try{ 
          db.closeConnection(); 
          db.closeStatement(); 
        }catch(SQLException e1) { 

        } 
        } 
      }else{ 
      response.setStatus(String.valueOf(db.getResult())); 
    } 
    return response; 
} 

数据类型的代码对于ad_stat是布尔,和我尝试假它

+0

检查您如何发送数据。尝试从GET更改为POST。将'content-Type':'multipart/form-data'添加到您发送的数据标题中 – StanislavL

回答

0

变化

@RequestMapping(method = RequestMethod.GET, path = "ads/deactive", produces = "application/json") 

@RequestMapping(method = RequestMethod.POST, path = "ads/deactive", produces = "application/json",Content-Type="multipart/formdata") 
0

添加加密类型到表单中。

<form enctype=”multipart/form-data”></form>