`
sillycat
  • 浏览: 2552817 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

XJC(2)Validate the XML with XSD

    博客分类:
  • JAVA
 
阅读更多
XJC(2)Validate the XML with XSD

1. The Validation Related codes
// 1. Lookup a factory for the W3C XML Schema language
SchemaFactory schemaFactory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
// 2. Compile the schema.
File schemaLocation = new File("src/generated/expense.xsd");
Schema schema = schemaFactory.newSchema(schemaLocation);
// 3. Get a validator from the schema.
Validator validator = schema.newValidator();
// 4. Parse the document you want to check.
Source source = new StreamSource(new StringReader(xml));
// 5. Check the document
try {
validator.validate(source);
System.out.println("XML is valid.");
} catch (SAXException e) {
System.out.println("XML is not valid because ");
System.out.println(e.getMessage());
}

2. Error Handler
try {
ErrorHandler errorHandler = new PrintErrorHandler();
validator.setErrorHandler(errorHandler);
validator.validate(source);
System.out.println("XML is valid.");
} catch (SAXException e) {
System.out.println("XML is not valid.");
//System.out.println(e.getMessage());
return ;
}

A handler class will handle the error action, PrintErrorHandler.java.
package generated;

import org.xml.sax.ErrorHandler;
import org.xml.sax.SAXParseException;

public class PrintErrorHandler implements ErrorHandler {

public void warning(SAXParseException ex) {
System.err.println("warning");
}

public void error(SAXParseException ex) {
System.err.println("error");
}

public void fatalError(SAXParseException ex){
System.err.println("fatal");
}

}

references:
http://www.ibm.com/developerworks/xml/library/x-javaxmlvalidapi/index.html




分享到:
评论

相关推荐

    xml文件转xsd文件

    2. **创建XSD草稿**:基于XML文件的结构,开始构建XSD文件的草稿。定义元素、属性、命名空间等,以及它们的数据类型和约束。XSD文件使用 `<element>`、`<complexType>`、`<attribute>` 等标签来定义这些元素。 3. *...

    使用jaxb根据xsd生成xml文档

    **使用JAXB根据XSD生成XML文档** 在Java开发中,XML文档的生成与解析是一项常见的任务,特别是在处理数据交换和存储时。JAXB(Java Architecture for XML Binding)是Java平台标准的一部分,它提供了一种将Java对象...

    trang.jar 用于xml生成xsd文件

    将trang.jar和要解析的xml放在同一目录,在当前文件下执行如下命令,其中users.xsd为要生成的xsd文件名 java -jar trang.jar users.xml users.xsd 执行完上述命令后会在当前文件生成users.xsd,然后执行如下命令,...

    JAXB 利用xsd文件生成java类

    在Java开发中,JAXB提供了一种方便的方式,允许开发者通过XML Schema (XSD) 文件来生成对应的Java类,从而简化XML处理的工作流程。 1. **XML Schema (XSD) 文件**: - XML Schema是一种W3C标准,用于定义XML文档的...

    jaxb for xjc 命令 实体类生成工具

    XJC是JAXB的一部分,它是一个命令行工具,用于从XML Schema (XSD) 文件生成对应的Java实体类。这些实体类可以帮助开发者直接操作XML数据,而无需关心底层解析和序列化的细节。 在Java开发中,当处理XML数据时,通常...

    java根据xml生成schema_xsd_生成javabean

    2. XSD到JavaBean的生成:生成JavaBean是将XSD文件中的元素和属性映射为Java类的过程,这有助于在Java应用程序中操作XML数据。通常,开发者会使用命令行脚本或者库来完成这个任务。例如,`createPro_Xsd.bat`和`...

    xsd.exe xml schema文件生成程序

    xsd.exe xml schema文件生成程序,将xml文件转换成xsd文件,然后可以通过xjc生成java类

    jaxb xml转化为对象,对象转化为xml,xml转化为xsd,表转化为对象

    同时,`xjc`也可以反向操作,将XML文档转换为XSD,但这通常需要人工干预和调整,因为XML文档可能有多种结构,无法直接生成唯一的XSD。 最后,“数据库表转化为对象”。JAXB并不直接支持数据库操作,但它可以与ORM...

    微软XSD 根据XML生成Java类文件

    xsd.exe 可用于根据 XML 文件生成 Java 类。 下载xsd.exe文件,命令行进入文件所在目录执行以下命令即可生成Java类文件(如下表示xml文件与xsd.exe在同一目录) ... 2)xjc -d . -p packageName ./fileName.xsd

    xsd转换成java对象

    2. **XJC(XSD to Java Compiler)**:这是JAXB的一部分,是一个命令行工具,用于从XSD文件生成Java源代码。使用`xjc`命令,可以指定XSD文件,并配置生成的Java类的命名空间、包名等选项。 3. **Java Class ...

    根据xsd批量生成java类

    根据xsd批量生成java类,觉得很方便也很酷。但是有时候xsd生成的java类中含有汉字,结果总是有些问题。 可是xjc命令参数又没有encoding参数之类的。在网上搜了一通,忽然发现了一个好东东:xjc是由...

    用jaxb自动生成xsd对像

    标题“用jaxb自动生成xsd对像”指的是利用JAXB的XJC(XSD到Java绑定编译器)工具,从XML Schema文件生成对应的Java类。这使得你可以直接操作Java对象,而无需直接处理XML的细节。 描述中的“简单易用”意味着通过...

    Xsd的使用命令

    这些工具可能包括`xmllint`、`xsdc`(XML Schema Compiler)、`xjc`(Java Architecture for XML Binding的命令行工具)等,它们可以帮助开发者生成基于XSD的类、验证XML实例文档或进行其他相关操作。 标签“源码”...

    JAXB2 jaxb-api.jar jaxb-xjc.jar jaxb-impl.jar activation.jar

    2. **jaxb-xjc.jar**:XJC(XML Java Compiler)是JAXB的代码生成工具,可以将XML Schema(XSD)转换为对应的Java类。当你有XML Schema定义时,使用xjc工具可以自动生成符合该Schema的Java类,使得处理XML数据更为...

    xjc-javadoc-plugin:XJC javadoc插件,基于xsd添加javadocs

    XJC javadoc插件,基于xsd:documentation元素添加javadocs。 插件已合并到Apache CXF XJC Utils中。 此版本将不再维护。 可以在Maven存储库中找到新的插件jar,格式为org.apache.cxf.xjcplugins:cxf-xjc-javadoc...

    JAXB + XSD

    然后,利用JAXB的`xjc`命令行工具,结合XSD文件和绑定文件生成Java源码。反之,如果你有一个Java对象模型,你可以使用JAXB的`Marshaller`和`Unmarshaller`接口将Java对象序列化为XML或者从XML反序列化回Java对象。 ...

    webservice之使用jaxb把xml转换Object或把对象转换成xml文件

    2. 生成Java类:使用JAXB工具(如`xjc`命令行工具或Maven插件)对XSD文件进行编译,自动生成对应的Java类。这些类包含了XML元素和属性的映射。 3. 解析XML:有了Java类,我们就可以使用JAXB提供的`Unmarshaller`...

    xsd通过java验证科学计数法

    首先,将XSD转换为Java类,可以使用工具如XJC(Java Architecture for XML Binding的命令行工具)。之后,使用`javax.xml.validation`包中的`SchemaFactory`和`Validator`类来加载XSD和验证XML文档: ```java ...

    xjc-1.0.2.zip

    2. **XJC (XSD to Java Compiler)**:XJC是JAXB的重要组成部分,它读取XML Schema文档并生成相应的Java类,使得在Java程序中操作XML数据变得更加简单。这些生成的类遵循JavaBeans模式,提供了方便的getter和setter...

    jaxb_impl,api,xjc,jsr

    5. **jaxb-xjc.jar**:XJC是JAXB的命令行工具,用于从XML Schema(XSD)生成对应的Java类。XSD定义了XML文档的结构,XJC可以将这些结构转化为Java对象模型,方便开发人员进行操作。 6. **jsr173_1.0_api.jar**:这...

Global site tag (gtag.js) - Google Analytics