public class BeanValidationPlugin
extends com.sun.tools.xjc.Plugin
Has two mods:
Is capable of generating the following annotations:"jsr303" - enables backward compatibility. "simpleRegex" - disables translation of UNICODE XML regex into UNICODE Java regex. Java ASCII regex are shorter to read.
Reacts to the following XSD restrictions and facets:- @DecimalMax - @DecimalMin - @Digits - @NotNull - @Pattern - @Size - @Valid - @AssertTrue - @AssertFalse - @Future - @Past
Basic usage:- maxExclusive - minExclusive - maxInclusive - minInclusive - nillable - pattern - length - maxLength - minLength - minOccurs - maxOccurs
Example usage with mods:xjc file.xsd -XBeanVal
Programmatic usage, with mods and extensions enabled:xjc file.xsd -XBeanVal jsr303 simpleRegex
Driver.run(new String[] { schemaPath, "-extension", "-XBeanVal", "jsr303", "simpleRegex" }, System.out,
System.out);
Supports setting Target groups and Error message through binding customizations. Example:
<xs:appinfo> <jxb:bindings node="/xs:schema/xs:complexType/xs:sequence/xs:element[@name='generic']"> <bv:facet type="maxLength" message="Hello, world!" groups="Object"/> <bv:facet type="future" message="Welcome to the Future!"/> </jxb:bindings> </xs:appinfo>
Supports custom-created BV annotations. Example:
<xs:appinfo> <jxb:bindings node="/xs:schema/xs:complexType/xs:sequence/xs:element[@name='generic']"> <bv:facet type="org.eclipse.persistence.annotations.AdditionalCriteria" value="This is a real custom annotation."/> </jxb:bindings> </xs:appinfo>
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
FACET |
static java.lang.String |
JSR_303_MOD |
static java.lang.String |
NS_URI |
static java.lang.String |
PLUGIN_OPTION |
static java.lang.String |
SIMPLE_REGEX_MOD |
| Constructor and Description |
|---|
BeanValidationPlugin() |
| Modifier and Type | Method and Description |
|---|---|
java.util.List<java.lang.String> |
getCustomizationURIs() |
java.lang.String |
getOptionName() |
java.lang.String |
getUsage() |
boolean |
isCustomizationTagName(java.lang.String nsUri,
java.lang.String localName) |
int |
parseArgument(com.sun.tools.xjc.Options opt,
java.lang.String[] args,
int i) |
boolean |
run(com.sun.tools.xjc.outline.Outline outline,
com.sun.tools.xjc.Options opts,
org.xml.sax.ErrorHandler errorHandler) |
public static final java.lang.String PLUGIN_OPTION
public static final java.lang.String JSR_303_MOD
public static final java.lang.String SIMPLE_REGEX_MOD
public static final java.lang.String NS_URI
public static final java.lang.String FACET
public java.lang.String getOptionName()
getOptionName in class com.sun.tools.xjc.Pluginpublic java.lang.String getUsage()
getUsage in class com.sun.tools.xjc.Pluginpublic java.util.List<java.lang.String> getCustomizationURIs()
getCustomizationURIs in class com.sun.tools.xjc.Pluginpublic boolean isCustomizationTagName(java.lang.String nsUri,
java.lang.String localName)
isCustomizationTagName in class com.sun.tools.xjc.Pluginpublic int parseArgument(com.sun.tools.xjc.Options opt,
java.lang.String[] args,
int i)
throws com.sun.tools.xjc.BadCommandLineException,
java.io.IOException
parseArgument in class com.sun.tools.xjc.Plugincom.sun.tools.xjc.BadCommandLineExceptionjava.io.IOExceptionpublic boolean run(com.sun.tools.xjc.outline.Outline outline,
com.sun.tools.xjc.Options opts,
org.xml.sax.ErrorHandler errorHandler)
run in class com.sun.tools.xjc.Plugin