- java.lang.Object
-
- javax.xml.datatype.DatatypeFactory
-
public abstract class DatatypeFactory extends Object
Factory that creates new
javax.xml.datatypeObjects that map XML to/from JavaObjects.newInstance()is used to create a newDatatypeFactory. The following implementation resolution mechanisms are used in the following order:-
If the system property specified by
DATATYPEFACTORY_PROPERTY, "javax.xml.datatype.DatatypeFactory", exists, a class with the name of the property's value is instantiated. Any Exception thrown during the instantiation process is wrapped as aDatatypeConfigurationException. -
If the file ${JAVA_HOME}/lib/jaxp.properties exists, it is loaded in a
PropertiesObject. ThePropertiesObjectis then queried for the property as documented in the prior step and processed as documented in the prior step. -
The services resolution mechanism is used, e.g.
META-INF/services/java.xml.datatype.DatatypeFactory. Any Exception thrown during the instantiation process is wrapped as aDatatypeConfigurationException. -
The final mechanism is to attempt to instantiate the
Classspecified byDATATYPEFACTORY_IMPLEMENTATION_CLASS. Any Exception thrown during the instantiation process is wrapped as aDatatypeConfigurationException.
- Since:
- 1.5
-
If the system property specified by
-
-
Field Summary
Fields Modifier and Type Field and Description static StringDATATYPEFACTORY_IMPLEMENTATION_CLASSDefault implementation class name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.static StringDATATYPEFACTORY_PROPERTYDefault property name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.
-
Constructor Summary
Constructors Modifier Constructor and Description protectedDatatypeFactory()Protected constructor to prevent instaniation outside of package.
-
Method Summary
Methods Modifier and Type Method and Description abstract DurationnewDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)Obtain a new instance of aDurationspecifying theDurationas isPositive, years, months, days, hours, minutes, seconds.DurationnewDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)Obtain a new instance of aDurationspecifying theDurationas isPositive, years, months, days, hours, minutes, seconds.abstract DurationnewDuration(long durationInMilliSeconds)Obtain a new instance of aDurationspecifying theDurationas milliseconds.abstract DurationnewDuration(String lexicalRepresentation)Obtain a new instance of aDurationspecifying theDurationas its string representation, "PnYnMnDTnHnMnS", as defined in XML Schema 1.0 section 3.2.6.1.DurationnewDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)Create aDurationof typexdt:dayTimeDurationusing the specifiedday,hour,minuteandsecondas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.DurationnewDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)Create aDurationof typexdt:dayTimeDurationusing the specifiedday,hour,minuteandsecondas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.DurationnewDurationDayTime(long durationInMilliseconds)Create aDurationof typexdt:dayTimeDurationusing the specified milliseconds as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.DurationnewDurationDayTime(String lexicalRepresentation)Create aDurationof typexdt:dayTimeDurationby parsing itsStringrepresentation, "PnDTnHnMnS", XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.DurationnewDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)Create aDurationof typexdt:yearMonthDurationusing the specifiedyearandmonthas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.DurationnewDurationYearMonth(boolean isPositive, int year, int month)Create aDurationof typexdt:yearMonthDurationusing the specifiedyearandmonthas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.DurationnewDurationYearMonth(long durationInMilliseconds)Create aDurationof typexdt:yearMonthDurationusing the specified milliseconds as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.DurationnewDurationYearMonth(String lexicalRepresentation)Create aDurationof typexdt:yearMonthDurationby parsing itsStringrepresentation, "PnYnM", XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.static DatatypeFactorynewInstance()Obtain a new instance of aDatatypeFactory.static DatatypeFactorynewInstance(String factoryClassName, ClassLoader classLoader)Obtain a new instance of aDatatypeFactoryfrom class name.abstract XMLGregorianCalendarnewXMLGregorianCalendar()Create a new instance of anXMLGregorianCalendar.abstract XMLGregorianCalendarnewXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)Constructor allowing for complete value spaces allowed by W3C XML Schema 1.0 recommendation for xsd:dateTime and related builtin datatypes.abstract XMLGregorianCalendarnewXMLGregorianCalendar(GregorianCalendar cal)Create anXMLGregorianCalendarfrom aGregorianCalendar.XMLGregorianCalendarnewXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)Constructor of value spaces that ajava.util.GregorianCalendarinstance would need to convert to anXMLGregorianCalendarinstance.abstract XMLGregorianCalendarnewXMLGregorianCalendar(String lexicalRepresentation)Create a new XMLGregorianCalendar by parsing the String as a lexical representation.XMLGregorianCalendarnewXMLGregorianCalendarDate(int year, int month, int day, int timezone)Create a Java representation of XML Schema builtin datatypedateorg*.XMLGregorianCalendarnewXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)Create a Java instance of XML Schema builtin datatype time.XMLGregorianCalendarnewXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)Create a Java instance of XML Schema builtin datatypetime.XMLGregorianCalendarnewXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)Create a Java instance of XML Schema builtin datatype time.
-
-
-
Field Detail
-
DATATYPEFACTORY_PROPERTY
public static final String DATATYPEFACTORY_PROPERTY
Default property name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.
Default value is
javax.xml.datatype.DatatypeFactory.- See Also:
- Constant Field Values
-
DATATYPEFACTORY_IMPLEMENTATION_CLASS
public static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS
Default implementation class name as defined in JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.
Implementers should specify the name of an appropriate class to be instantiated if no other implementation resolution mechanism succeeds.
Users should not refer to this field; it is intended only to document a factory implementation detail.
-
-
Constructor Detail
-
DatatypeFactory
protected DatatypeFactory()
Protected constructor to prevent instaniation outside of package.
Use
newInstance()to create aDatatypeFactory.
-
-
Method Detail
-
newInstance
public static DatatypeFactory newInstance() throws DatatypeConfigurationException
Obtain a new instance of a
DatatypeFactory.The implementation resolution mechanisms are defined in this
Class's documentation.- Returns:
- New instance of a
DatatypeFactory - Throws:
DatatypeConfigurationException- If the implementation is not available or cannot be instantiated.- See Also:
newInstance(String factoryClassName, ClassLoader classLoader)
-
newInstance
public static DatatypeFactory newInstance(String factoryClassName, ClassLoader classLoader) throws DatatypeConfigurationException
Obtain a new instance of a
DatatypeFactoryfrom class name. This function is useful when there are multiple providers in the classpath. It gives more control to the application as it can specify which provider should be loaded.Once an application has obtained a reference to a
DatatypeFactoryit can use the factory to configure and obtain datatype instances.Tip for Trouble-shooting
Setting the
jaxp.debugsystem property will cause this method to print a lot of debug messages toSystem.errabout what it is doing and where it is looking at.If you have problems try:
java -Djaxp.debug=1 YourProgram ....
- Parameters:
factoryClassName- fully qualified factory class name that provides implementation ofjavax.xml.datatype.DatatypeFactory.classLoader-ClassLoaderused to load the factory class. IfnullcurrentThread's context classLoader is used to load the factory class.- Returns:
- New instance of a
DatatypeFactory - Throws:
DatatypeConfigurationException- iffactoryClassNameisnull, or the factory class cannot be loaded, instantiated.- Since:
- 1.6
- See Also:
newInstance()
-
newDuration
public abstract Duration newDuration(String lexicalRepresentation)
Obtain a new instance of a
Durationspecifying theDurationas its string representation, "PnYnMnDTnHnMnS", as defined in XML Schema 1.0 section 3.2.6.1.XML Schema Part 2: Datatypes, 3.2.6 duration, defines
durationas:duration represents a duration of time. The value space of duration is a six-dimensional space where the coordinates designate the Gregorian year, month, day, hour, minute, and second components defined in Section 5.5.3.2 of [ISO 8601], respectively. These components are ordered in their significance by their order of appearance i.e. as year, month, day, hour, minute, and second.
All six values are set and availabe from the created
DurationThe XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.- Parameters:
lexicalRepresentation-Stringrepresentation of aDuration.- Returns:
- New
Durationcreated from parsing thelexicalRepresentation. - Throws:
IllegalArgumentException- IflexicalRepresentationis not a valid representation of aDuration.UnsupportedOperationException- If implementation cannot support requested values.NullPointerException- iflexicalRepresentationisnull.
-
newDuration
public abstract Duration newDuration(long durationInMilliSeconds)
Obtain a new instance of a
Durationspecifying theDurationas milliseconds.XML Schema Part 2: Datatypes, 3.2.6 duration, defines
durationas:duration represents a duration of time. The value space of duration is a six-dimensional space where the coordinates designate the Gregorian year, month, day, hour, minute, and second components defined in Section 5.5.3.2 of [ISO 8601], respectively. These components are ordered in their significance by their order of appearance i.e. as year, month, day, hour, minute, and second.
All six values are set by computing their values from the specified milliseconds and are availabe using the
getmethods of the createdDuration. The values conform to and are defined by:- ISO 8601:2000(E) Section 5.5.3.2 Alternative format
- W3C XML Schema 1.0 Part 2, Appendix D, ISO 8601 Date and Time Formats
XMLGregorianCalendarDate/Time Datatype Field Mapping Between XML Schema 1.0 and Java Representation
The default start instance is defined by
GregorianCalendar's use of the start of the epoch: i.e.,Calendar.YEAR= 1970,Calendar.MONTH=Calendar.JANUARY,Calendar.DATE= 1, etc. This is important as there are variations in the Gregorian Calendar, e.g. leap years have different days in the month =Calendar.FEBRUARYso the result ofDuration.getMonths()andDuration.getDays()can be influenced.- Parameters:
durationInMilliSeconds- Duration in milliseconds to create.- Returns:
- New
DurationrepresentingdurationInMilliSeconds.
-
newDuration
public abstract Duration newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
Obtain a new instance of a
Durationspecifying theDurationas isPositive, years, months, days, hours, minutes, seconds.The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.A
nullvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.years- of thisDurationmonths- of thisDurationdays- of thisDurationhours- of thisDurationminutes- of thisDurationseconds- of thisDuration- Returns:
- New
Durationcreated from the specified values. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if all the fields (years, months, ...) are null or if any of the fields is negative.UnsupportedOperationException- If implementation cannot support requested values.
-
newDuration
public Duration newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
Obtain a new instance of a
Durationspecifying theDurationas isPositive, years, months, days, hours, minutes, seconds.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.years- of thisDurationmonths- of thisDurationdays- of thisDurationhours- of thisDurationminutes- of thisDurationseconds- of thisDuration- Returns:
- New
Durationcreated from the specified values. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if any of the fields is negative.- See Also:
newDuration( boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
-
newDurationDayTime
public Duration newDurationDayTime(String lexicalRepresentation)
Create a
Durationof typexdt:dayTimeDurationby parsing itsStringrepresentation, "PnDTnHnMnS", XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.The datatype
xdt:dayTimeDurationis a subtype ofxs:durationwhose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespacehttp://www.w3.org/2003/11/xpath-datatypes.All four values are set and availabe from the created
DurationThe XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.- Parameters:
lexicalRepresentation- Lexical representation of a duration.- Returns:
- New
Durationcreated using the specifiedlexicalRepresentation. - Throws:
IllegalArgumentException- IflexicalRepresentationis not a valid representation of aDurationexpressed only in terms of days and time.UnsupportedOperationException- If implementation cannot support requested values.NullPointerException- IflexicalRepresentationisnull.
-
newDurationDayTime
public Duration newDurationDayTime(long durationInMilliseconds)
Create a
Durationof typexdt:dayTimeDurationusing the specified milliseconds as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.The datatype
xdt:dayTimeDurationis a subtype ofxs:durationwhose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespacehttp://www.w3.org/2003/11/xpath-datatypes.All four values are set by computing their values from the specified milliseconds and are availabe using the
getmethods of the createdDuration. The values conform to and are defined by:- ISO 8601:2000(E) Section 5.5.3.2 Alternative format
- W3C XML Schema 1.0 Part 2, Appendix D, ISO 8601 Date and Time Formats
XMLGregorianCalendarDate/Time Datatype Field Mapping Between XML Schema 1.0 and Java Representation
The default start instance is defined by
GregorianCalendar's use of the start of the epoch: i.e.,Calendar.YEAR= 1970,Calendar.MONTH=Calendar.JANUARY,Calendar.DATE= 1, etc. This is important as there are variations in the Gregorian Calendar, e.g. leap years have different days in the month =Calendar.FEBRUARYso the result ofDuration.getDays()can be influenced.Any remaining milliseconds after determining the day, hour, minute and second are discarded.
- Parameters:
durationInMilliseconds- Milliseconds ofDurationto create.- Returns:
- New
Durationcreated with the specifieddurationInMilliseconds. - See Also:
- XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration
-
newDurationDayTime
public Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
Create a
Durationof typexdt:dayTimeDurationusing the specifiedday,hour,minuteandsecondas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.The datatype
xdt:dayTimeDurationis a subtype ofxs:durationwhose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespacehttp://www.w3.org/2003/11/xpath-datatypes.The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.A
nullvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.day- Day ofDuration.hour- Hour ofDuration.minute- Minute ofDuration.second- Second ofDuration.- Returns:
- New
Durationcreated with the specifiedday,hour,minuteandsecond. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if all the fields (day, hour, ...) are null or if any of the fields is negative.UnsupportedOperationException- If implementation cannot support requested values.
-
newDurationDayTime
public Duration newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
Create a
Durationof typexdt:dayTimeDurationusing the specifiedday,hour,minuteandsecondas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration.The datatype
xdt:dayTimeDurationis a subtype ofxs:durationwhose lexical representation contains only day, hour, minute, and second components. This datatype resides in the namespacehttp://www.w3.org/2003/11/xpath-datatypes.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.day- Day ofDuration.hour- Hour ofDuration.minute- Minute ofDuration.second- Second ofDuration.- Returns:
- New
Durationcreated with the specifiedday,hour,minuteandsecond. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if any of the fields (day, hour, ...) is negative.
-
newDurationYearMonth
public Duration newDurationYearMonth(String lexicalRepresentation)
Create a
Durationof typexdt:yearMonthDurationby parsing itsStringrepresentation, "PnYnM", XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.The datatype
xdt:yearMonthDurationis a subtype ofxs:durationwhose lexical representation contains only year and month components. This datatype resides in the namespaceXMLConstants.W3C_XPATH_DATATYPE_NS_URI.Both values are set and availabe from the created
DurationThe XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.- Parameters:
lexicalRepresentation- Lexical representation of a duration.- Returns:
- New
Durationcreated using the specifiedlexicalRepresentation. - Throws:
IllegalArgumentException- IflexicalRepresentationis not a valid representation of aDurationexpressed only in terms of years and months.UnsupportedOperationException- If implementation cannot support requested values.NullPointerException- IflexicalRepresentationisnull.
-
newDurationYearMonth
public Duration newDurationYearMonth(long durationInMilliseconds)
Create a
Durationof typexdt:yearMonthDurationusing the specified milliseconds as defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.The datatype
xdt:yearMonthDurationis a subtype ofxs:durationwhose lexical representation contains only year and month components. This datatype resides in the namespaceXMLConstants.W3C_XPATH_DATATYPE_NS_URI.Both values are set by computing their values from the specified milliseconds and are availabe using the
getmethods of the createdDuration. The values conform to and are defined by:- ISO 8601:2000(E) Section 5.5.3.2 Alternative format
- W3C XML Schema 1.0 Part 2, Appendix D, ISO 8601 Date and Time Formats
XMLGregorianCalendarDate/Time Datatype Field Mapping Between XML Schema 1.0 and Java Representation
The default start instance is defined by
GregorianCalendar's use of the start of the epoch: i.e.,Calendar.YEAR= 1970,Calendar.MONTH=Calendar.JANUARY,Calendar.DATE= 1, etc. This is important as there are variations in the Gregorian Calendar, e.g. leap years have different days in the month =Calendar.FEBRUARYso the result ofDuration.getMonths()can be influenced.Any remaining milliseconds after determining the year and month are discarded.
- Parameters:
durationInMilliseconds- Milliseconds ofDurationto create.- Returns:
- New
Durationcreated using the specifieddurationInMilliseconds.
-
newDurationYearMonth
public Duration newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
Create a
Durationof typexdt:yearMonthDurationusing the specifiedyearandmonthas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.The XML Schema specification states that values can be of an arbitrary size. Implementations may chose not to or be incapable of supporting arbitrarily large and/or small values. An
UnsupportedOperationExceptionwill be thrown with a message indicating implementation limits if implementation capacities are exceeded.A
nullvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.year- Year ofDuration.month- Month ofDuration.- Returns:
- New
Durationcreated using the specifiedyearandmonth. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if all of the fields (year, month) are null or if any of the fields is negative.UnsupportedOperationException- If implementation cannot support requested values.
-
newDurationYearMonth
public Duration newDurationYearMonth(boolean isPositive, int year, int month)
Create a
Durationof typexdt:yearMonthDurationusing the specifiedyearandmonthas defined in XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
isPositive- Set tofalseto create a negative duration. When the length of the duration is zero, this parameter will be ignored.year- Year ofDuration.month- Month ofDuration.- Returns:
- New
Durationcreated using the specifiedyearandmonth. - Throws:
IllegalArgumentException- If the values are not a valid representation of aDuration: if any of the fields (year, month) is negative.
-
newXMLGregorianCalendar
public abstract XMLGregorianCalendar newXMLGregorianCalendar()
Create a new instance of an
XMLGregorianCalendar.All date/time datatype fields set to
DatatypeConstants.FIELD_UNDEFINEDor null.- Returns:
- New
XMLGregorianCalendarwith all date/time datatype fields set toDatatypeConstants.FIELD_UNDEFINEDor null.
-
newXMLGregorianCalendar
public abstract XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)
Create a new XMLGregorianCalendar by parsing the String as a lexical representation.
Parsing the lexical string representation is defined in XML Schema 1.0 Part 2, Section 3.2.[7-14].1, Lexical Representation.
The string representation may not have any leading and trailing whitespaces.
The parsing is done field by field so that the following holds for any lexically correct String x:
newXMLGregorianCalendar(x).toXMLFormat().equals(x)
Except for the noted lexical/canonical representation mismatches listed in XML Schema 1.0 errata, Section 3.2.7.2.
- Parameters:
lexicalRepresentation- Lexical representation of one the eight XML Schema date/time datatypes.- Returns:
XMLGregorianCalendarcreated from thelexicalRepresentation.- Throws:
IllegalArgumentException- If thelexicalRepresentationis not a validXMLGregorianCalendar.NullPointerException- IflexicalRepresentationisnull.
-
newXMLGregorianCalendar
public abstract XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
Create an
XMLGregorianCalendarfrom aGregorianCalendar.Field by Field Conversion from GregorianCalendarto anXMLGregorianCalendarjava.util.GregorianCalendarfieldjavax.xml.datatype.XMLGregorianCalendarfieldERA == GregorianCalendar.BC ? -YEAR : YEARXMLGregorianCalendar.setYear(int year)MONTH + 1XMLGregorianCalendar.setMonth(int month)DAY_OF_MONTHXMLGregorianCalendar.setDay(int day)HOUR_OF_DAY, MINUTE, SECOND, MILLISECONDXMLGregorianCalendar.setTime(int hour, int minute, int second, BigDecimal fractional)(ZONE_OFFSET + DST_OFFSET) / (60*1000)
(in minutes)XMLGregorianCalendar.setTimezone(int offset)**conversion loss of information. It is not possible to represent a
java.util.GregorianCalendardaylight savings timezone id in the XML Schema 1.0 date/time datatype representation.To compute the return value's
TimeZonefield,- when
this.getTimezone() != FIELD_UNDEFINED, create ajava.util.TimeZonewith a custom timezone id using thethis.getTimezone(). - else use the
GregorianCalendardefault timezone value for the host is defined as specified byjava.util.TimeZone.getDefault().
- Parameters:
cal-java.util.GregorianCalendarused to createXMLGregorianCalendar- Returns:
XMLGregorianCalendarcreated fromjava.util.GregorianCalendar- Throws:
NullPointerException- Ifcalisnull.
- when
-
newXMLGregorianCalendar
public abstract XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
Constructor allowing for complete value spaces allowed by W3C XML Schema 1.0 recommendation for xsd:dateTime and related builtin datatypes. Note that
yearparameter supports arbitrarily large numbers and fractionalSecond has infinite precision.A
nullvalue indicates that field is not set.- Parameters:
year- ofXMLGregorianCalendarto be created.month- ofXMLGregorianCalendarto be created.day- ofXMLGregorianCalendarto be created.hour- ofXMLGregorianCalendarto be created.minute- ofXMLGregorianCalendarto be created.second- ofXMLGregorianCalendarto be created.fractionalSecond- ofXMLGregorianCalendarto be created.timezone- ofXMLGregorianCalendarto be created.- Returns:
XMLGregorianCalendarcreated from specified values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().
-
newXMLGregorianCalendar
public XMLGregorianCalendar newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
Constructor of value spaces that a
java.util.GregorianCalendarinstance would need to convert to anXMLGregorianCalendarinstance.XMLGregorianCalendar eonandfractionalSecondare set tonullA
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
year- ofXMLGregorianCalendarto be created.month- ofXMLGregorianCalendarto be created.day- ofXMLGregorianCalendarto be created.hour- ofXMLGregorianCalendarto be created.minute- ofXMLGregorianCalendarto be created.second- ofXMLGregorianCalendarto be created.millisecond- ofXMLGregorianCalendarto be created.timezone- ofXMLGregorianCalendarto be created.- Returns:
XMLGregorianCalendarcreated from specified values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().
-
newXMLGregorianCalendarDate
public XMLGregorianCalendar newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
Create a Java representation of XML Schema builtin datatype
dateorg*.For example, an instance of
gYearcan be created invoking this factory withmonthanddayparameters set toDatatypeConstants.FIELD_UNDEFINED.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
year- ofXMLGregorianCalendarto be created.month- ofXMLGregorianCalendarto be created.day- ofXMLGregorianCalendarto be created.timezone- offset in minutes.DatatypeConstants.FIELD_UNDEFINEDindicates optional field is not set.- Returns:
XMLGregorianCalendarcreated from parameter values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().- See Also:
DatatypeConstants.FIELD_UNDEFINED
-
newXMLGregorianCalendarTime
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
Create a Java instance of XML Schema builtin datatype
time.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
hours- number of hoursminutes- number of minutesseconds- number of secondstimezone- offset in minutes.DatatypeConstants.FIELD_UNDEFINEDindicates optional field is not set.- Returns:
XMLGregorianCalendarcreated from parameter values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().- See Also:
DatatypeConstants.FIELD_UNDEFINED
-
newXMLGregorianCalendarTime
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
Create a Java instance of XML Schema builtin datatype time.
A
nullvalue indicates that field is not set.A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
hours- number of hoursminutes- number of minutesseconds- number of secondsfractionalSecond- value ofnullindicates that this optional field is not set.timezone- offset in minutes.DatatypeConstants.FIELD_UNDEFINEDindicates optional field is not set.- Returns:
XMLGregorianCalendarcreated from parameter values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().- See Also:
DatatypeConstants.FIELD_UNDEFINED
-
newXMLGregorianCalendarTime
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
Create a Java instance of XML Schema builtin datatype time.
A
DatatypeConstants.FIELD_UNDEFINEDvalue indicates that field is not set.- Parameters:
hours- number of hoursminutes- number of minutesseconds- number of secondsmilliseconds- number of millisecondstimezone- offset in minutes.DatatypeConstants.FIELD_UNDEFINEDindicates optional field is not set.- Returns:
XMLGregorianCalendarcreated from parameter values.- Throws:
IllegalArgumentException- If any individual parameter's value is outside the maximum value constraint for the field as determined by the Date/Time Data Mapping table inXMLGregorianCalendaror if the composite values constitute an invalidXMLGregorianCalendarinstance as determined byXMLGregorianCalendar.isValid().- See Also:
DatatypeConstants.FIELD_UNDEFINED
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/xml/datatype/DatatypeFactory.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.