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

控制器无法从ajax识别@Request estparam

诸葛苏燕
2023-03-14

我正试图将json从ajax发送到springboot控制器,但收到错误[org.springframework.web.bind.MissingServletRequestParameterException:Required Item[]参数“myJsonString[]”不存在]

下面是我的ajax代码

$.ajax({
    type: "POST",
    url: "/DBA_TOOLS/admin/tracker",
    data: {myJsonString:myJsonString},
    dataType: "json",
    success: function (data){
        if(data.status == "SUCCESS"){
            alert("AJAX request successfully completed:"+JSON.stringify(data));
        }else{
            console.log('Error Msg'+JSON.stringify(data));
        }
        console.log('Error Msg'+data.message+''+JSON.stringify(data));
    },
    error: function(jqXHR, textStatus, errorThrown) {
        console.log(jqXHR.status);
        console.log(textStatus);
        console.log(errorThrown);
    },
    complete: function() {

    }
});

下面是我的控制器

@PostMapping(value="/tracker")
public int traker(@RequestParam(value="myJsonString[]") Item[] myJsonString){    

    System.out.println("getting somethig from tracker");
    
    int count=0;
    try{
        for(Item item : myJsonString){
           System.out.println("User  is updating item id "+item.getName());
           //count+= ggProcessRepository.changeAlert(row,isActive);
        }
    }catch(Exception e){
        System.out.println("Exception Occured"+e);
    }
    return count;
}

我尝试了请求参数要求false,它让块工作,但如何将ajax数据获取到我的请求参数对我来说是一个挑战。

在浏览器调试中,我看到表单数据正在发送--

共有1个答案

曹均
2023-03-14

如果将其更改为:

traker(@RequestParam(value="myJsonString")
 类似资料:
  • 我正在使用Eclipse Version:Oxygen.3a发行版(4.7.3a)下的Python3.7.7,希望能够在Eclipse PyDev控制台中运行ipython。 虽然ipython在“Windows->首选项->PyDev->解释器->软件包”下显示为已安装 对于Eclipse中的PyDev控制台来说,它仍然是未知的: windows控制台对此表示: 任何帮助都将不胜感激!

  • 我正在尝试将nib文件加载到UITableView,我使用情节提要将其放置在UIView中。 UITableView和UIView有两个独立的ViewController,我正在尝试连接它们,但我收到一条错误消息,说无法识别选择器。这是什么意思? 谢谢你! VC1 VC2 错误

  • 问题内容: 我正在开发一个使用大量ajax的grails应用程序。如果请求是ajax调用,那么它应该给出响应(这部分正在工作),但是如果我在浏览器中输入URL,它应该带我到主页/索引页面而不是请求的页面。下面是Ajax调用的示例gsp代码。 如果我们在浏览器URL栏中键入http:// localhost:8080 / Dash / todo / list ,则控制器应重定向到http:// lo

  • 问题内容: 我正在使用simple_form gem并生成表单,我正在指定remote:true选项,如下所示: 因此,表单的输出html是以下片段: 正如我检查的那样,当使用 remote:true 选项时,使用标准的form_for帮助器将 data-remote =’true’添加 到表单中。从生成的html中可以看到,当我使用simple_form gem时,也有这样的属性。 __ 因此,

  • 我已经在stackoverflow上查过了,但没有找到类似的东西。 我使用具有以下依赖项的Spring boot: 我想对日志输出使用自定义模式,以便在控制台上打印我的 mdc.变量。它通过应用程序属性工作 但是我得到了双重输入,但我无法通过应用程序属性设置可加性属性。我必须使用对数Spring.xml。看起来像这样: 这解决了双重输入。但该模式不用于对数输出。我可以有双重条目或没有模式,因为无法

  • 问题内容: 为什么无法从另一个内部访问其他控制器方法呢? 像这样。 已编译 如果您不能这样做,那为什么不呢?我还应该怎么做… 问题答案: 最近几个小时遇到相同的问题。我使用了api / services文件夹。它可能不完全是您所需要的,但是它是一个选择。