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
Supports setting Target groups and Error message through binding customizations. Example:Driver.run(new String[] { schemaPath, "-extension", "-XBeanVal", "jsr303", "simpleRegex" }, System.out, System.out);
<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.Plugin
public java.lang.String getUsage()
getUsage
in class com.sun.tools.xjc.Plugin
public java.util.List<java.lang.String> getCustomizationURIs()
getCustomizationURIs
in class com.sun.tools.xjc.Plugin
public boolean isCustomizationTagName(java.lang.String nsUri, java.lang.String localName)
isCustomizationTagName
in class com.sun.tools.xjc.Plugin
public 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.Plugin
com.sun.tools.xjc.BadCommandLineException
java.io.IOException
public 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