I/O 问题没有找到类 org.json.JSONObject 的序列化器,也没有发现创建 BeanSerializer 的属性

2024-05-12

不确定发生了什么,完整的错误是:

Problem with i/o No serializer found for class org.json.JSONObject and no properties        discovered to create BeanSerializer (to avoid exception, disable SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS) )

我正在尝试向 RESTful 服务发送 PUT 请求。我正在解析 POST 并为 PUT 发送“ID”和“启用”的修改后的键/值对。

@Test(dependsOnMethods= {"Post"})
public void Put() throws IOException  {

logger.logTestActivity("Testing FORM data POST using Excel file");
requestBuilder = new RequestSpecBuilder();

String jsonString = "";
boolean enabledModify = false;

try {
 BufferedReader in = new BufferedReader(new FileReader(
 xmlTest.getParameter("json-post")));

String str;

while ((str = in.readLine()) != null) {
      jsonString += str;
        }

JSONObject jsonObjPut = new JSONObject(jsonString);
jsonObjPut.put("_id", createUserId);
jsonObjPut.put("enabled",enabledModify);

    System.out.println(jsonObjPut.toString());
in.close();

    requestBuilder.setContentType(ContentType.JSON);
    requestSpecification = requestBuilder.build();
    responseBuilder.expectStatusCode(Integer.parseInt(xmlTest
    .getParameter("http-status-code-200")));
    responseBuilder.expectContentType(ContentType.JSON);
    responseSpecification = responseBuilder.build();    
System.out.println(createUserId);

String responseJson = given().body(jsonObjPut).         
when().put("/" + createUserId).asString();

    System.out.println(responseJson);

logger.logTestActivity("Finished testing FORM data POST using Excel file");
} catch (AssertionError e ) {
  logger.logTestActivity(
        "Error testing FORM data post: " + e.getMessage(),logger.ERROR);

      System.out.println("REST URL: " + RestAssured.baseURI + " "
                + RestAssured.port + " " + RestAssured.basePath );
  Assert.fail("Error testing FORM data POST: " + e.getMessage());
        throw e;
} catch (IOException | JSONException e) {
   System.out.println("Problem with i/o" + e.getMessage()); 
    }
}

createUserID 是一个全局变量,是从 POST 中解析出的 ID。

正在解析的 JSON 文件如下所示:

{
"enabled" : false,
"_id" : "fdse332a-22432d-4432b"
}

在之前的测试方法中,我正在使用所有适当的 url 端点设置放心...

此外,PUT 也失败,并出现 NULLPointerException 错误。这可能是将来的另一篇文章!


解决方案:在传递给 resassured 时,我没有将 JSON 对象转换为字符串。

String responseJson = given().body(jsonObjPut.toString).

这成功了。我现在使用生成的 ID 修改现有的 json,并在 RESTful 服务上成功执行 PUT。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

I/O 问题没有找到类 org.json.JSONObject 的序列化器,也没有发现创建 BeanSerializer 的属性 的相关文章

  • 将 JSON 反序列化为自定义列表

    我有这个 json var x 99 abc 2dp GroupNum 0 Total 4 1 7 x date 60 x 1dp GroupNum 1 存在以下规则 让i参考内部列表索引 x i 0 必填项 始终为整数 x i 1 必填项
  • 由于连接超时,无法通过 ImageIO.read(url) 获取图像

    下面的代码似乎总是失败 URL url new URL http userserve ak last fm serve 126 8636005 jpg Image img ImageIO read url System out printl
  • 无法加载 jar 文件的主类

    我使用 Eclipse IDE 开发了一个应用程序 创建应用程序后 我以 jar 格式导出项目 当我尝试运行此 jar 文件时 出现错误 无法加载主类 请帮忙 当您将项目导出为 jar 时 请参阅此所以问题 https stackoverf
  • MI设备中即使应用程序被杀死,如何运行后台服务

    您好 我正在使用 alaram 管理器运行后台服务 它工作正常 但对于某些 mi 设备 后台服务无法工作 我使用了服务 但它无法工作 如何在 mi 中运行我的后台服务 MI UI有自己的安全选项 所以你需要的不仅仅是上面提到的粘性服务 你需
  • Java 重写 hashCode() 得到 StackOverflowError

    所以我不太熟悉重写 hashCode 并且我似乎在 hashCode 方法中以某种方式进行了一些无限递归 这是我的场景 我有一个 DuplicateCache 类 它是一个缓存对象 用于检查系统中的重复对象 我有一个静态内部类 Duplic
  • 使用 Java 在浏览器中下载 CSV 文件

    我正在尝试在 Web 应用程序上添加一个按钮 单击该按钮会下载一个 CSV 文件 该文件很小 大小仅约 4KB 我已经制作了按钮并附加了一个侦听器 文件也准备好了 我现在唯一需要做的就是创建单击按钮时下载 csv 文件的实际事件 假设 fi
  • Java替换特定字符

    这是我在这个网站上的第一个问题 所以我会尽量不要成为一个十足的菜鸟 我目前正在用java 创建刽子手游戏 所以我问你的问题是我们是否被赋予了 幽灵 这个词 并将 Ghost 替换为 hiddenWord ghost length for i
  • 为什么我在 Mac 上看到“java.lang.reflect.InaccessibleObjectException: Unable to make private java.nio.DirectByteBuffer(long,int)accessibl

    我已经在工作中愉快地构建代码好几天了 但突然我的一个项目 不是全部 失败并出现此错误消息 看看下面的答案吧 我是如何修复它的 起初我用谷歌搜索 看到很多有这个问题的人正在使用 Java 16 但我认为 错误 我正在使用 Java 11 因为
  • 使用 java 按电子邮件发送日历邀请

    我正在尝试使用 java 发送每封电子邮件的日历邀请 收件人收到电子邮件 但不会显示接受或拒绝的邀请 而是将该事件自动添加到他的日历中 我正在使用 ical4j jar 构建活动 邀请 private Calendar getInvite
  • 想要开发像 Facebook 这样的网站 - 处理数百万个请求 - 高性能 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想用 Java 开发一个像 Fac
  • Java:VM 如何在 32 位处理器上处理 64 位“long”

    JVM 如何在 32 位处理器上处理 64 位的原始 long 在多核 32 位机器上可以并行利用多个核心吗 64 位操作在 32 位机器上慢了多少 它可能使用多个核心来运行不同的线程 但不会并行使用它们进行 64 位计算 64 位长基本上
  • 打印包含 JBIG2 图像的 PDF

    请推荐一些库 帮助我打印包含 JBIG2 编码图像的 PDF 文件 PDFRenderer PDFBox别帮我 这些库可以打印简单的 PDF 但不能打印包含 JBIG2 图像的 PDF PDFRenderer尝试修复它 根据 PDFRedn
  • tomcat 过滤所有 web 应用程序

    问题 我想对所有网络应用程序进行过滤 我创建了一个过滤器来监视对 apache tomcat 服务器的请求 举例来说 它称为 MyFilter 我在 netbeans 中创建了它 它创建了 2 个独立的目录 webpages contain
  • 如何使用 Mockito 和 Junit 模拟 ZonedDateTime

    我需要模拟一个ZonedDateTime ofInstant 方法 我知道SO中有很多建议 但对于我的具体问题 到目前为止我还没有找到任何简单的解决办法 这是我的代码 public ZonedDateTime myMethodToTest
  • 从 Stax XMLStreamReader 读取以解组部分

    我正在使用 Stax 游标 API 从大型 xml 文件中提取数据 当前 我转到特殊标签的开头并使用 JAXB 解组该标签 这对于格式良好的 xml 文件效果很好 但不久前我有一个文档 其中数十万个标签中有一个未关闭 JAXB 使用 XML
  • 在 Selenium WebDriver 上如何从 Span 标签获取文本

    在 Selenium Webdriver 上 如何从 span 标记检索文本并打印 我需要提取文本UPS Overnight Free HTML代码如下 div id customSelect 3 class select wrapper
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • 有人可以用简单的术语解释“超文本作为应用程序状态的引擎”

    这似乎是我最难理解的 REST 原则 我知道 在设计 REST API 时 大部分精力应该花在为应用程序设计 描述超文本上 对于这个原理的现实世界应用有什么指示吗 原子协议如何应用这个原理 有人可以简单地解释一下如何将其应用到假设的购物车
  • Path2D 上的鼠标指针检测

    我构建了一个Path2D http docs oracle com javase 7 docs api java awt geom Path2D html表示由直线组成的未闭合形状 我希望能够检测何时单击鼠标并且鼠标指针靠近路径 在几个像素
  • Spring Boot MSSQL Kerberos 身份验证

    目前在我的春季靴子中application properties文件中 我指定以下行来连接到 MSSql 服务器 spring datasource url jdbc sqlserver localhost databaseName spr

随机推荐