当前位置: 首页 > 知识库问答 >
问题:

如何从补丁修复422状态响应

郑帅
2023-03-14

我有一个react前端和java后端。我正在使用一个AXIOS.patch请求,并不断收到一个422响应。我不知道出了什么问题。我希望这是正确的更新。我正在使用jsonpatch尝试更新这个对象。

 return API.patch(`bmwsales/updateWeb/${vid}/`, veh, {headers: { 
'Authorization' : basic }})
             .then((response) =>{
                    if (response.status==200){
   dispatch(updateVehicleSuccess());
                    }

                }, (error) =>{
                        if (error.response.status == 500){

  dispatch(vehicleError(error.message, "Could not update rfidtag, please try again."));
                        }else if 
(error.response.status == 422){

dispatch(vehicleError(error.message, "Could not update rfidtag, please try again."));
                        }
@PatchMapping("/bmwsales/updateWeb/{id}")
public ResponseEntity<?> updateVehicleTagWeb(@PathVariable(value="id") Integer id, @RequestBody Bmwsales v) throws JsonProcessingException{
    ObjectMapper objMapper=new ObjectMapper();
            JsonPatchBuilder jsonPatchBuilder=Json.createPatchBuilder();
    JsonPatch jsonPatch=jsonPatchBuilder.replace("/templocation",v.getTemplocation()).replace("/rfidtag", v.getRfidtag()).build();
    Bmwsales vehicle=bmwService.getVin(id).orElseThrow(ResourceNotFoundException::new);
BmwsalesUpdate veh=oMapper.asInput(vehicle);
    BmwsalesUpdate h=patchHelp.patch(jsonPatch, veh, BmwsalesUpdate.class);
    oMapper.INSTANCE.update(vehicle, h);
        return new ResponseEntity<>(h, HttpStatus.OK);

javax.json.jsonException:“{”id“:69406,”rfidtag“:”e200420c71a06015010b6362“}”不包含名称“templocation”的值

好的,我想我修正了这个.....我改变了我的Jackson配置,注释掉了SetDefaultPropertyInclusive,只包含nonnull。现在可以了。但是现在,json修补程序并没有更新我所指出的2个字段,而是试图更新整个对象。我如何限制这一点?

共有1个答案

巢安澜
2023-03-14

也许您可以在@patchmapping中的application_json_value中设置consumes属性,在classmediatype

希望这能有所帮助。

 类似资料:
  • Git 中的一些命令是以引入的变更即提交这样的概念为中心的,这样一系列的提交,就是一系列的补丁。 这些命令以这样的方式来管理你的分支。 git cherry-pick git cherry-pick 命令用来获得在单个提交中引入的变更,然后尝试将作为一个新的提交引入到你当前分支上。 从一个分支单独一个或者两个提交而不是合并整个分支的所有变更是非常有用的。 在 变基与拣选工作流 一节中描述和演示了

  • 问题内容: 我有一个形状为“DxHxW”的三维图像。我成功地提取了图像 分为“pdxphxpw”(重叠面片)。对于每个补丁,我都会做一些 处理。我现在要从图像中生成补丁这样,新图像必须与原始图像具有相同的形状。你能帮忙吗 让我来做。 这里](https://i.stack.imgur.com/kQkfw.png) 这是我提取补丁的代码 This is the processing the patc

  • web.xml pom.xml homeController.java } home.jsp

  • 我正在使用Visual Studio Code进行编码,但最近我遇到了奇怪的问题,该如何解决? 当我输入php artisan tinker时,tinker文本不像往常一样,我记得颜色是蓝色的,但现在是白色的。同样在使用php artisan migrate和etc命令后,结果文本是白色的 我卸载了Vscode以及所有appdata和扩展以及与之相关的任何东西,但在安装最新版本后没有任何变化,修补

  • 编写一个iocp控制台服务器并不容易,套接字池和线程池都工作得很好,但是过了一段时间,服务器就不能再连接了,虽然没有什么问题发生,为什么呢?我用procexp_16.05.1446001339.exe检查进程属性,发现有很多close_wait状态,过了一段时间close_wait状态消失了,但是服务器还是不能连接,这是为什么呢?又该如何修复呢?

  • 最近,我对一个Java桌面应用程序应用了一个修复程序。我通过更改我的一个类中的代码来做到这一点,编译它并将新的jar发送到生产环境。 null 我想出的最好的答案是这个,但它已经2岁了。修补Java软件 我的要求很少吗?我从未见过补丁Java应用程序的教程。