vsm java_java – 我尝试使用JAXB将对象编组到xml文件中时,错误为“缺少@XmlRootElement注释”...
我是刚刚开始使用JAXB的人,所有我需要的是将对象写入xml并在某些时候将其读回
java
这是我的班级:
public class VSM implements java.io.Externalizable
{
ArrayList termList; //Term Dictionary
ArrayList queryTermList; //Query list
ArrayList> docLists;
ArrayList> queryDocLists;
double[] docLength; //Denominator for doc linearization
double queryLength; //Denominator for query lineriazation
HashMap queryDocLenght; //Vector for holding noramiliase queries
HashMap queryDoc;
String Docs[]; //List of file names
Double scoreCap=0.04; //Score cap to reduce the effect of stop words
public static String fileName = "indexedFiles.txt";
private static final long serialVersionUID = 7863262235394607247L;
public VSM()
{
//Some constructor code
}
}
这是我用来构造XML文件的方法
public void writeXML(VSM vsm)
{
try {
File file = new File("IndexXmlfile.xml");
//JAXBElement jaxbWrappedHeader = objectFactory.createHeader(obj);
JAXBContext jaxbContext = JAXBContext.newInstance(VSM.class);
Marshaller jaxbMarshaller = jaxbContext.createMarshaller();
// output pretty printed
jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
jaxbMarshaller.marshal(new JAXBElement(new QName("uri","local"), VSM.class, vsm), System.out);
jaxbMarshaller.marshal(vsm, file);
jaxbMarshaller.marshal(vsm, System.out);
} catch (JAXBException e) {
e.printStackTrace();
}
}
Altough当我尝试运行代码时,我得到错误:
javax.xml.bind.MarshalException
- with linked exception:
[com.sun.istack.SAXException2: unable to marshal type "KPT.VSM" as an element because it is missing an @XmlRootElement annotation]
at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:326)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:251)
at javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(Unknown Source)
at KPT.VSM.writeXML(VSM.java:477)
at KPT.VSM.main(VSM.java:511)
Caused by: com.sun.istack.SAXException2: unable to marshal type "KPT.VSM" as an element because it is missing an @XmlRootElement annotation
at com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:249)
at com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot(ClassBeanInfoImpl.java:339)
at com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:494)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:323)
... 4 more
我完全不理解JABX及其所有方法,所以我很难理解这个错误,我尝试了一下谷歌搜索,发现很多人都得到了这个错误,但仍然觉得很难理解这里的问题. .
vsm java_java – 我尝试使用JAXB将对象编组到xml文件中时,错误为“缺少@XmlRootElement注释”...相关推荐
- Winform中实现序列化指定类型的对象到指定的Xml文件和从指定的Xml文件中反序列化指定类型的对象
场景 在Winform程序中需要将某些页面的设置存储到配置文件中,下次再次打开时通过配置文件读取,点击确定时能将将设置保存到配置文件中. 之前介绍过 Winform中自定义xml配置文件后对节点进行读 ...
- mybatis在关联映射中,引入外部xml文件中定义的对象
2019独角兽企业重金招聘Python工程师标准>>> association标签 在mybatis中,关联映射是通过association标签实现的. Lottery2Rule对象 ...
- 将json对象输出为xml文件
一.pom中引入jdom依赖 <dependency><groupId>org.jdom</groupId><artifactId>jdom</a ...
- mysql存储登录密码_当密码存储在选项文件中时,MySQL拒绝登录尝试
第一: >我们正在运行MySQL 5.7.13. >操作系统是Red Hat Enterprise Linux 7.2. >首先使用Python / Connector 2.1.3发 ...
- java xml 字符串转对象_java读取xml文件并转换成对象,并进行修改
1.首先要写工具类,处理读取和写入xml文件使用的工具.XMLUtil.java import java.io.FileInputStream; import java.io.FileWriter; ...
- java序列化和反序列化对象_java中的序列化与反序列化,还包括将多个对象序列化到一个文件中...
package Serialize; /** * Created by hu on 2015/11/7. */ //实现序列化必须实现的接口,这就是一个空接口,起到标识的作用 import java. ...
- 如何将Python对象保存在本地文件中?
Python对象的永久存储 1.使用Python的pickle模块 import pickle class A:def __init__(self,name,a):self.name=nameself ...
- oxygen 生成java对象_利用oxygen编辑并生成xml文件,并使用JAVA的JAXB技术完成xml的解析...
首先下载oxygen软件(Oxygen XML Editor),目前使用的是试用版(可以安装好软件以后get trial licence,获得免费使用30天的权限,当然这里鼓励大家用正版软件!!!) ...
- 如何运用JAXB定时读取解析xml文件?
Background系统 一.背景 在许多开发需求中都解析xml文件的需求,对于规格复杂的xml文件,方法很多主要有JDK原生dom形式,SAX形式,DOM4J ,JAXB 4种方式,但是JAXB(J ...
最新文章
- WAIC | 云天励飞副总裁肖嵘:创「芯」时代 打造自进化城市智能体
- python程序设计梁勇 百度网盘_20194220 2019-2020-2 《Python程序设计》实验二报告
- 商丘网络推广是如何做好网站优化的关键词布局的呢?
- mybaits四-1:增删改查的实现
- 牛顿法 Newton Method
- Groovy简介和一点资源
- Angular js 具体应用(一)
- 5 华为兼容性 双指缩放_华为EMUI10“滚屏翻译”之背后的学问
- 『设计模式』开发设计的七大原则,我做人还是挺有原则,那些代码呢?
- php5.3 sql server,php5.3连接sqlserver2005
- sql azure 语法_Azure Kubernetes服务(AKS)–管理SQL Server数据库文件
- sqlite工作记录-1数据库数据写入-转
- 打算_20160604
- php跟python效率_python为何效率慢点?PHP跟Python的解释器都是C写的,PHP为什么能快点?...
- ubutu虚拟机和主机共享同一网络
- Lambda表达详细介绍、全的不能全了!!
- 人体反应测试仪 c语言,FD.12-FD-HRT-A
- 网络渗透测试实验二(网络扫描与网络侦察)
- C语言之算法的概念和特点
- 安装 python cuda
热门文章
- eclipse juno_放弃Eclipse Juno
- fork join框架使用_Java:使用Fork / Join框架的Mergesort
- spring social_Spring Social入门–第2部分
- JavaFX将会留下来!
- 通过NFS访问编年引擎
- heroku_简单的Twitter:Heroku上的Play框架,AJAX,CRUD
- Delta架构:统一Lambda架构并利用Hadoop / REST中的Storm
- 如何在Java Reflection中的类下获取所有方法信息?
- Spring MVC中的验证组
- 带有Gradle的Docker容器分为4个步骤