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

填充java对象时出现参数类型不匹配异常

微生学
2023-03-14

在jaxb上下文转换技术的帮助下,我将java对象转换为xml字符串。当我试着以主类的形式运行程序时。它将其转换为xml字符串,但当我从project中的不同类调用该方法时。它抛出参数不匹配异常。我正在使用tomcat 7和jdk 6,并在eclipse中运行代码。请查找下面的马歇尔片段。

    JAXBContext context = JAXBContext.newInstance(Test.class);

                 m = context.createMarshaller();

                m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);

sw = new StringWriter();

                m.marshal(request, sw);

请指导为什么它失败时,我运行它到一个项目。

共有1个答案

商皓
2023-03-14

请按照下面的方法列表Java对象,并使用XML编写器制作xml格式。

   JAXBContext context = JAXBContext.newInstance(Test.class);

   Marshaller m = context.createMarshaller();

            m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);

   NamespaceFilter outFilter = new NamespaceFilter(null, false);
   ByteArrayOutputStream baOPStram = new ByteArrayOutputStream();

   //Use XML writer to create the xml file.
   XMLWriter writer = new XMLWriter(baOPStram);

   outFilter.setContentHandler(writer);

   m.marshal(**YourJavaObject**, outFilter);

   message = new String(baOPStram.toByteArray());

如果您希望将xml文件保存到某个地方,请提供输出文件的引用。

   OutputStream os = new FileOutputStream("xyz.xml");
   m.marshal(**YourJavaObject**, outFilter);

还可以在之前设置以下属性

   m.setProperty(javax.xml.bind.Marshaller.JAXB_ENCODING, "UTF-8");
 类似资料:
  • 成品尺寸:99.00_99.00_99.00;展开尺寸:411.00_327.00;印刷:双面印刷;正面印颜色:多色 CMYK;反面印刷颜色:单色_青色;表面处理:哑胶;背面处理:无;预折:否;1;粘合:自动粘1处;纸张材质:单铜纸_350;包装服务:盒子扎皮筋;外箱套蛇皮袋:否;

  • 所以我从文件中读取信息,得到一个类型不匹配错误。我通过调试器运行了它,但我不确定是什么导致了它——因为它正在读取正确的数字(在本例中为2000),但它似乎不认为它是整数? 我的代码如下: 从这些信息中可以看出: 2014年雇员史密斯,约翰2000 2015推销员琼斯,比尔3000 100000 2014执行布什,乔治5000 55 2014年员工曼,莎拉4000 2015年销售员Marco,约旦5

  • 我正在尝试使用Spring数据执行一个IN查询。我的模型如下所示: 我的仓库界面是这样的: } 问题是当我尝试执行此代码

  • 当我试图使用@DataProvider类将excel表中的几个值传递给page objects类中的几个方法时,我遇到了“参数类型不匹配”错误。这些方法依次在@Test类中调用。你能在这个问题上帮助我吗。下文已提到该守则。 数据提供者 测试类 错误: 失败:eCommerceProduct(2.0,“Magic Mouse”,1.0,“$150”,“$150”)java.lang.IllegalA

  • 问题内容: 我第一次使用JavaFx,遇到事件问题。我用SceneBuilder构建了一个表单,并在.fxml和controller上添加了一个事件,但始终返回: FirstScene.fxml: FirstSceneController.java: JavaFxApplication.java: 例外: 我将非常感谢您的帮助。 问题答案: 使用,而不是。

  • 它打印出值的等效,这是因为这一行: 通过调用表示。 那么,如何使Hibernate相信是的实例? 我的枚举是由加载的。而由URLClassLoader加载,由另一个类加载器加载。