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

将JSON数据从JQUERY传递到java控制器时发生异常

仲孙子辰
2023-03-14

我将JSON数据从jQuery传递到我的Java控制器,我正在使用@recestBody,但我得到一个异常说:

组织。springframework。网状物HttpMediaTypeNotSupportedException:内容类型'application/x-www-form-urlencoded;字符集=UTF-8'不受支持

我传递的数据是:

myData = {
  "source": "CSS",
  "type": "CSS2",
  "typeValue": "value",
  "textarea_value": " desc"
}:

我用来传递此数据的AJAX调用是:

$.ajax({
  url: './common/deleteData',
  type: 'POST',
  data: myData,
  success: function(data) {
    alert("Successfully Deleted Source..");
  },
  error: function(data) {}
});  

我的Java控制器如下所示

@RequestMapping(value = "/common/deleteData", method = RequestMethod.POST, consumes = {"application/x-www-form-urlencoded; charset=UTF-8"})
public String deleteData(@RequestBody SourceDelete sourcedelete, final HttpServletRequest request, final RedirectAttributes rdtAttribs) throws ApplicationException 
{
  LOGGER.entry("Deleting the Merge Preference Details");
  System.out.println(sourcedelete.getSource());
  return null;
}

我的POJO对象如下所示:

public class SourceDelete {
  private String source;
  private String type;
  private String typeValue;
  private String textarea_value;
  //Setters and Getters
}

有人能帮我弄清楚为什么我会出现这个错误,以及我应该如何修复它吗?

共有1个答案

任飞龙
2023-03-14

删除@RequestBody注释,

@RequestMapping(value = "/common/deleteData", method = RequestMethod.POST, consumes = {"application/x-www-form-urlencoded; charset=UTF-8"})
public String deleteData(SourceDelete sourcedelete, final HttpServletRequest request, final RedirectAttributes rdtAttribs) throws ApplicationException 
{
  LOGGER.entry("Deleting the Merge Preference Details");
  System.out.println(sourcedelete.getSource());
  return null;
}
 类似资料:
  • 问题内容: 我的图像是我试图将数据(变量)从一个阶段传递到另一阶段,但是当我尝试在第二阶段访问它们时,它们为空。mainWindow的代码。前往window1 // window1类: 如果我想访问以前收到的标题,则为null 初始化显示应该为“ Window1”时显示为null} 问题答案: 在加载FXML文件的过程中,将调用该方法-换句话说,在调用时将调用该方法。 显然,这是 在 调用 之前

  • 我有使用Springboot和Thymeleaf模板编写的简单Web应用程序。报告控制器从表单接收数据并构建TestPlanReportReportACK对象,该对象作为模型属性添加如下: 我可以在“图表”thymeleaf模板中使用该数据并显示我需要的数据,但我需要在单击按钮时将完全相同的对象发送回控制器,但我得到TestPlanReportACK对象作为设置空值的参数。 以下是我的按钮在图表模

  • 在我们讨论数据库和数据模型之前,让我们先讨论一下如何将数据从控制器传递给视图。控制器类将响应请求来的URL。控制器类是给您写代码来处理传入请求的地方,并从数据库中检索数据,并最终决定什么类型的返回结果会发送回浏览器。视图模板可以被控制器用来产生格式化过的HTML从而返回给浏览器。 控制器负责给任何数据或者对象提供一个必需的视图模板,用这个视图模板来Render返回给浏览器的HTML。最佳做法是:一

  • 问题内容: 我是laravel的新手,我一直试图将表’student’的所有记录存储到一个变量,然后将该变量传递给视图,以便可以显示它们。 我有一个控制器-ProfileController,里面有一个函数: 我认为我有此代码 我收到此错误:未定义的变量:学生(View:regprofile.blade.php) 问题答案: 你能试试看吗 同时,您可以设置多个类似这样的变量,

  • 我在建一个拉威尔的网站。我希望提交的表单数据运行查询,并将结果插入表格式。我正在使用oracle DB,并已将其连接到Laravel。另外,我已经创建了表单,查询结果正确。我不能做的是将结果成功地传递到表中。 我的文件如下: > Routes.php(或web.php较新的laravel版本): 搜索。刀身php(带有post方法的表单) 我的控制器(NewController.php)运行查询。

  • 我做了逻辑包,但是UI仍然有问题。我想做的是允许用户输入作业数量,在下一个窗口中,我想显示文本字段,他可以在其中输入每个作业的执行时间,换句话说,我应该显示文本字段n time,作为用户给定的作业数量。 这是我为第一个界面所做的: 这是我的控制器: 我不知道是否有方法将参数从控制器传递到FXML文件,并在FXML中执行循环。。请帮忙