JAXB出现URI Not Absolute异常的解决方案
来源:互联网 发布:机房设备监控软件 编辑:程序博客网 时间:2024/05/22 15:44
JAXB出现URI Not Absolute异常的解决方案
最近在使用JAXB将bean对象转为XML文件时报出了URI Not Absolute错误。奇怪的是,在Window平台上,JAXB可以正常的完成转换并写入文件,而在Linux平台上给出了异常。
出现问题的以下接口:
这里的第二个参数xml,我们传入了待写入的文件路径字符串。在Windows上可以识别诸如:D:\\files\\target.xml的字符串为文件路径,而在Linux上面,则报出Jaxb uri is not absolute异常。
由于这是URI路径不被识别为文件引起的,因此修改下调用的接口就可以了。Marshal拥有多个重载的方法,传入File对象即可避免错误。
测试代码如下:
import javax.xml.bind.JAXB;
import java.nio.file.Paths;
/**
* Created by Administrator on 2017/6/14.
*/
public class JAXBTest {
public static void main(String[] args) {
TestBean bean = new TestBean();
bean.setName("akira");
bean.setAge(18);
String path = Paths.get("G:/tmp/target.xml").toString();
JAXB.marshal(bean, path);
}
}
import javax.xml.bind.annotation.*;
/**
* Created by Administrator on 2017/6/14.
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "root")
public class TestBean {
@XmlAttribute(name = "name")
private String name;
@XmlAttribute(name = "age")
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
修改为:
import javax.xml.bind.JAXB;
import java.nio.file.Path;
import java.nio.file.Paths;
/**
* Created by Administrator on 2017/6/14.
*/
public class JAXBTest {
public static void main(String[] args) {
TestBean bean = new TestBean();
bean.setName("akira");
bean.setAge(18);
Path path = Paths.get("G:/tmp/target.xml");
JAXB.marshal(bean, path.toFile());
}
}
- JAXB出现URI Not Absolute异常的解决方案
- 异常:java.lang.IllegalArgumentException: URI scheme is not “file”?的解决方案
- URI is not registered 解决方案(android studio异常关闭导致的问题)
- wp Relative uri Absolute uri的区别
- JAXB 的xjc任务时出现java.lang.IllegalArgumentException异常
- apache的httpclient报出的java.lang.IllegalArgumentException: Invalid uri ...... escaped absolute path not valid
- 【错误解决】[Maven]使用Maven配置Jstl出现异常:The absolute uri: http://java.sun.com/jsp/jstl/core cannot...
- Tomcat 部署应用的时候出现的提示Jstl core错误 The absolute uri
- 出现NSGenericException异常的解决方案
- 出现NSGenericException异常的解决方案
- 出现NSGenericException异常的解决方案
- hive配置问题异常 Relative path in absolute URI
- 使用Jstl异常:org.apache.jasper.JasperException: This absolute uri
- maven工程引入jstl,且出现uri异常的解决
- 程序使用的URL出现异常,at java.net.URI.create(URI.java:842)
- Jaxb将xml转换为bean时异常javax.xml.bind.UnmarshalException: unexpected element (uri:"", local:"
- WEB项目中出现The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in ei问题的解决方法
- Hive 启动异常: java.net.URISyntaxException: Relative path in absolute URI:
- UFLDL教程: Exercise:Self-Taught Learning
- android 获取MP4文件的图片大小
- 给比特币做一次体检
- iOS 算法~十大算法基础总结
- 《算法初步》
- JAXB出现URI Not Absolute异常的解决方案
- 分享】diy 漂亮的 n 格 (適用於可以 diy 的任何版本)
- bootstrap学习30--javascript插件--modal dialog
- Java反射机制的原理与简单使用
- mysql事物处理的四大特征和简单用法
- 基于Soot的Java程序分析生存手册(一)
- 【QT】列表控件之右键编辑
- Python的hasattr() getattr() setattr()使用
- Java配置----JDK开发环境搭建及环境变量配置