public interface DatatypeConverterInterface
DatatypeConverterInterface は、JAXB プロバイダのみによって使用されます。JAXB プロバイダは、このインタフェースを実装したクラスを提供する必要があります。JAXB プロバイダは、最初の整列化または非整列化操作が呼び出される前のある時点で (おそらく、JAXBContext.newInstance の呼び出し中)、DatatypeConverter.setDatatypeConverter
API を呼び出す必要があります。このステップは、出力および解析機能を実行する上で使用すべきコンバータを設定するために必要になります。この API を繰り返し呼び出しても効果はありません。最初の呼び出しに渡された DatatypeConverter インスタンスが、それ以降使用されるインスタンスです。
このインタフェースは、解析メソッドおよび出力メソッドを定義します。JAXB 仕様のデフォルトバインディングテーブル 5-1 で指定された各 XML スキーマデータ型に対し、1 つの解析メソッドおよび出力メソッドがあります。
ここに定義する解析メソッドおよび出力メソッドは、DatatypeConverter
クラスに定義された static 解析メソッドおよび出力メソッドによって呼び出されます。
XML スキーマデータ型用の解析メソッドは、『XML Schema Part2: Datatypes』に指定されている XML スキーマデータ型の字句表現を、XML スキーマデータ型の値領域内の値に変換できる必要があります。変換中にエラーが発生した場合、このメソッドは IllegalArgumentException、または、IllegalArgumentException のサブクラスをスローする必要があります。
XML スキーマデータ型の出力メソッドは、XML スキーマデータ型として有効な字句表現を出力可能です。変換中にエラーが発生した場合、このメソッドは IllegalArgumentException、または、IllegalArgumentException のサブクラスをスローする必要があります。
接頭辞 xsd: は、『XML Schema Part2: Datatypes』仕様に定義されている XML スキーマデータ型を参照するために使用されます。DatatypeConverter
, ParseConversionEvent
, PrintConversionEvent
修飾子と型 | メソッドと説明 |
---|---|
String |
parseAnySimpleType(String lexicalXSDAnySimpleType)
単純型の字句表現を含む文字列を返します。
|
byte[] |
parseBase64Binary(String lexicalXSDBase64Binary)
文字列引数をバイト配列に変換します。
|
boolean |
parseBoolean(String lexicalXSDBoolean)
文字列引数を boolean 値に変換します。
|
byte |
parseByte(String lexicalXSDByte)
文字列引数を byte 値に変換します。
|
Calendar |
parseDate(String lexicalXSDDate)
文字列引数を Calendar 値に変換します。
|
Calendar |
parseDateTime(String lexicalXSDDateTime)
文字列引数を Calendar 値に変換します。
|
BigDecimal |
parseDecimal(String lexicalXSDDecimal)
文字列引数を BigDecimal 値に変換します。
|
double |
parseDouble(String lexicalXSDDouble)
文字列引数を double 値に変換します。
|
float |
parseFloat(String lexicalXSDFloat)
文字列引数を float 値に変換します。
|
byte[] |
parseHexBinary(String lexicalXSDHexBinary)
文字列引数をバイト配列に変換します。
|
int |
parseInt(String lexicalXSDInt)
文字列引数を int 値に変換します。
|
BigInteger |
parseInteger(String lexicalXSDInteger)
文字列引数を BigInteger 値に変換します。
|
long |
parseLong(String lexicalXSDLong)
文字列引数を long 値に変換します。
|
QName |
parseQName(String lexicalXSDQName, NamespaceContext nsc)
文字列引数を QName 値に変換します。
|
short |
parseShort(String lexicalXSDShort)
文字列引数を short 値に変換します。
|
String |
parseString(String lexicalXSDString)
文字列引数を文字列に変換します。
|
Calendar |
parseTime(String lexicalXSDTime)
文字列引数を Calendar 値に変換します。
|
long |
parseUnsignedInt(String lexicalXSDUnsignedInt)
文字列引数を long 値に変換します。
|
int |
parseUnsignedShort(String lexicalXSDUnsignedShort)
文字列引数を int 値に変換します。
|
String |
printAnySimpleType(String val)
文字列値を文字列に変換します。
|
String |
printBase64Binary(byte[] val)
バイト配列を文字列に変換します。
|
String |
printBoolean(boolean val)
boolean 値を文字列に変換します。
|
String |
printByte(byte val)
byte 値を文字列に変換します。
|
String |
printDate(Calendar val)
Calendar 値を文字列に変換します。
|
String |
printDateTime(Calendar val)
Calendar 値を文字列に変換します。
|
String |
printDecimal(BigDecimal val)
BigDecimal 値を文字列に変換します。
|
String |
printDouble(double val)
double 値を文字列に変換します。
|
String |
printFloat(float val)
float 値を文字列に変換します。
|
String |
printHexBinary(byte[] val)
バイト配列を文字列に変換します。
|
String |
printInt(int val)
int 値を文字列に変換します。
|
String |
printInteger(BigInteger val)
BigInteger 値を文字列に変換します。
|
String |
printLong(long val)
long 値を文字列に変換します。
|
String |
printQName(QName val, NamespaceContext nsc)
QName インスタンスを文字列に変換します。
|
String |
printShort(short val)
short 値を文字列に変換します。
|
String |
printString(String val)
文字列引数を文字列に変換します。
|
String |
printTime(Calendar val)
Calendar 値を文字列に変換します。
|
String |
printUnsignedInt(long val)
long 値を文字列に変換します。
|
String |
printUnsignedShort(int val)
int 値を文字列に変換します。
|
String parseString(String lexicalXSDString)
文字列引数を文字列に変換します。
lexicalXSDString
- XML Schema データ型 xsd:string の字句表現BigInteger parseInteger(String lexicalXSDInteger)
文字列引数を BigInteger 値に変換します。
lexicalXSDInteger
- xsd:integer の字句表現を含む文字列。NumberFormatException
- lexicalXSDInteger
が BigInteger
値の文字列表現として無効である場合。int parseInt(String lexicalXSDInt)
文字列引数を int 値に変換します。
lexicalXSDInt
- xsd:int の字句表現を含む文字列。NumberFormatException
- lexicalXSDInt
が int
値の文字列表現として無効である場合。long parseLong(String lexicalXSDLong)
文字列引数を long 値に変換します。
lexicalXSDLong
- xsd:long の字句表現を含む文字列。NumberFormatException
- lexicalXSDLong
が long
値の文字列表現として無効である場合。short parseShort(String lexicalXSDShort)
文字列引数を short 値に変換します。
lexicalXSDShort
- xsd:short の字句表現を含む文字列。NumberFormatException
- lexicalXSDShort
が short
値の文字列表現として無効である場合。BigDecimal parseDecimal(String lexicalXSDDecimal)
文字列引数を BigDecimal 値に変換します。
lexicalXSDDecimal
- xsd:decimal の字句表現を含む文字列。NumberFormatException
- lexicalXSDDecimal
が BigDecimal
の文字列表現として無効である場合。float parseFloat(String lexicalXSDFloat)
文字列引数を float 値に変換します。
lexicalXSDFloat
- xsd:float の字句表現を含む文字列。NumberFormatException
- lexicalXSDFloat
が float
値の文字列表現として無効である場合。double parseDouble(String lexicalXSDDouble)
文字列引数を double 値に変換します。
lexicalXSDDouble
- xsd:double の字句表現を含む文字列。NumberFormatException
- lexicalXSDDouble
が double
値の文字列表現として無効である場合。boolean parseBoolean(String lexicalXSDBoolean)
文字列引数を boolean 値に変換します。
lexicalXSDBoolean
- xsd:boolean の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:boolean に関する仕様で定義された字句値領域に準拠していない場合。byte parseByte(String lexicalXSDByte)
文字列引数を byte 値に変換します。
lexicalXSDByte
- xsd:byte の字句表現を含む文字列。NumberFormatException
- lexicalXSDByte
が解析可能な byte を含まない場合。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:byte に関する仕様で定義された字句値領域に準拠していない場合。QName parseQName(String lexicalXSDQName, NamespaceContext nsc)
文字列引数を QName 値に変換します。
文字列パラメータ lexicalXSDQname は、XML Schema Part 2:Datatypes 仕様の QNames で指定されている字句値領域に準拠している必要があります。
lexicalXSDQName
- xsd:QName の字句表現を含む文字列。nsc
- QName 内の接頭辞を解釈するための名前空間コンテキスト。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2 仕様に準拠していない場合、または lexicalXSDQname の名前空間接頭辞が NamespaceContext nsc 内の URI にバインドされていない場合。Calendar parseDateTime(String lexicalXSDDateTime)
文字列引数を Calendar 値に変換します。
lexicalXSDDateTime
- xsd:datetime の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:dateTime に関する仕様で定義された字句値領域に準拠していない場合。byte[] parseBase64Binary(String lexicalXSDBase64Binary)
文字列引数をバイト配列に変換します。
lexicalXSDBase64Binary
- xsd:base64Binary の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:base64Binary に関する仕様で定義された字句値領域に準拠していない場合byte[] parseHexBinary(String lexicalXSDHexBinary)
文字列引数をバイト配列に変換します。
lexicalXSDHexBinary
- xsd:hexBinary の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:hexBinary に関する仕様で定義された字句値領域に準拠していない場合。long parseUnsignedInt(String lexicalXSDUnsignedInt)
文字列引数を long 値に変換します。
lexicalXSDUnsignedInt
- xsd:unsignedInt の字句表現を含む文字列。NumberFormatException
- 文字列パラメータを long 値に構文解析できない場合。int parseUnsignedShort(String lexicalXSDUnsignedShort)
文字列引数を int 値に変換します。
lexicalXSDUnsignedShort
- xsd:unsignedShort の字句表現を含む文字列。NumberFormatException
- 文字列パラメータを int 値に構文解析できない場合。Calendar parseTime(String lexicalXSDTime)
文字列引数を Calendar 値に変換します。
lexicalXSDTime
- xsd:time の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:time に関する仕様で定義された字句値領域に準拠していない場合。Calendar parseDate(String lexicalXSDDate)
文字列引数を Calendar 値に変換します。
lexicalXSDDate
- xsd:Date の字句表現を含む文字列。IllegalArgumentException
- 文字列パラメータが XML Schema Part 2: Datatypes の xsd:Date に関する仕様で定義された字句値領域に準拠していない場合。String parseAnySimpleType(String lexicalXSDAnySimpleType)
単純型の字句表現を含む文字列を返します。
lexicalXSDAnySimpleType
- 単純型の字句表現を含む文字列。String printString(String val)
文字列引数を文字列に変換します。
val
- 文字列値。String printInteger(BigInteger val)
BigInteger 値を文字列に変換します。
val
- BigInteger 値IllegalArgumentException
- val が null の場合。String printInt(int val)
int 値を文字列に変換します。
val
- int 値String printLong(long val)
long 値を文字列に変換します。
val
- long 値String printShort(short val)
short 値を文字列に変換します。
val
- short 値String printDecimal(BigDecimal val)
BigDecimal 値を文字列に変換します。
val
- BigDecimal 値IllegalArgumentException
- val が null の場合。String printFloat(float val)
float 値を文字列に変換します。
val
- float 値String printDouble(double val)
double 値を文字列に変換します。
val
- double 値String printBoolean(boolean val)
boolean 値を文字列に変換します。
val
- boolean 値String printByte(byte val)
byte 値を文字列に変換します。
val
- byte 値String printQName(QName val, NamespaceContext nsc)
QName インスタンスを文字列に変換します。
val
- QName 値nsc
- QName 内の接頭辞を解釈するための名前空間コンテキスト。IllegalArgumentException
- val が null、nsc が null 以外、または nsc.getPrefix(nsprefixFromVal) が null の場合。String printDateTime(Calendar val)
Calendar 値を文字列に変換します。
val
- Calendar 値IllegalArgumentException
- val が null の場合。String printBase64Binary(byte[] val)
バイト配列を文字列に変換します。
val
- バイト配列IllegalArgumentException
- val が null の場合。String printHexBinary(byte[] val)
バイト配列を文字列に変換します。
val
- バイト配列IllegalArgumentException
- val が null の場合。String printUnsignedInt(long val)
long 値を文字列に変換します。
val
- long 値String printUnsignedShort(int val)
int 値を文字列に変換します。
val
- int 値String printTime(Calendar val)
Calendar 値を文字列に変換します。
val
- Calendar 値IllegalArgumentException
- val が null の場合。String printDate(Calendar val)
Calendar 値を文字列に変換します。
val
- Calendar 値IllegalArgumentException
- val が null の場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.