public static final double SAMPLE_DATA_FOR_NUMBER_DEFAULT
newInstanceFilledSampleData(Class, String)
メソッドで利用される、
java.lang.Number用のサンプルデータ初期値。
public static final boolean SAMPLE_DATA_FOR_BOOLEAN_DEFAULT
newInstanceFilledSampleData(Class, String)
メソッドで利用される、
java.lang.Boolean用のサンプルデータ初期値。
public static final long SAMPLE_DATA_FOR_DATE_MILLIS_DEFAULT
newInstanceFilledSampleData(Class, String)
メソッドで利用される、
java.util.Date用のサンプルデータ初期値(ミリ秒)。
public static final int SAMPLE_DATA_ARRAY_LENGTH_DEFAULT
newInstanceFilledSampleData(Class, String)
メソッドで利用される、
サンプルデータが配列の場合の要素数。
メソッドの詳細 |
---|
public static void executeVoidFunction(String pagePath, String functionName, Object... args) throws IllegalConversionException, Exception
executeFunction(pagePath, functionName, void.class, args)
を呼び出すことに相当します。
pagePath
- ページパス(拡張子なし)functionName
- 実行関数名args
- 関数の引数
IllegalConversionException
- Java形式からJavaScript形式への変換に失敗した場合。
Exception
- JavaScript関数の実行時にエラーが発生した場合。executeFunction(String, String, Class, Object...)
public static Object executeFunction(String pagePath, String functionName, Class<?> returnType, Object... args) throws IllegalConversionException, Exception
javaBeanToJS(Object)
を利用しています。jsToJavaBean(Object, Class)
を利用しています。javaBeanToJS(Object)
、および、
jsToJavaBean(Object, Class)
の説明を参照してください。
変換後のJavaクラスを配列で指定する場合、
例えば、Memberクラスの配列を変換後のクラスに指定する場合は以下のようになります。
(Member[]) JavaScriptUtility.executeFunction(pagePath, functionName, Member[].class, args);
pagePath
- ページパス(拡張子なし)functionName
- 実行関数名returnType
- 関数返却値の変換後のJavaクラスargs
- 関数の引数
IllegalConversionException
- Java形式 から JavaScript形式への変換、または、
JavaScript形式 から Java形式への変換に失敗した場合。
Exception
- JavaScript関数の実行時にエラーが発生した場合。public static Object javaBeanToJS(Object bean) throws IntrospectionException, IOException, IllegalAccessException, InvocationTargetException
Java | JavaScript | |
---|---|---|
null | → | null |
java.lang.String | → | String |
java.lang.Number | → | Number |
java.lang.Boolean | → | Boolean |
java.util.Date | → | Date |
java.util.Calendar | ||
byte[] | → | String (バイナリ) |
javax.activation.DataHandler | ||
配列 | → | Array |
bean
- 変換対象のJavaオブジェクト
IntrospectionException
- イントロスペクション中に例外が発生した場合
IllegalAccessException
- 引数に渡されたJavaBeanのGetterにアクセスできない場合
InvocationTargetException
- 引数に渡されたJavaBeanのGetterが例外をスローする場合
IOException
- バイナリデータの変換に失敗した場合public static Object jsToJavaBean(Object jsObject, String beanClassName) throws IllegalConversionException, IOException, InstantiationException, IllegalAccessException, IntrospectionException, ClassNotFoundException
jsToJavaBean(jsObject, beanClassName, java.lang.Thread.currentThread().getContextClassLoader())
を呼び出すことに相当します。
jsObject
- 変換対象のJavaScriptオブジェクトbeanClassName
- 変換後のJavaクラス名
IllegalConversionException
- 変換処理に失敗した場合
InstantiationException
- 指定された変換後のJavaクラスが、抽象クラス、インタフェース、配列クラス、プリミティブ型、または void を表す場合。または、指定された変換後のJavaクラスが無引数コンストラクタを保持しない場合、あるいはインスタンスの生成がほかの理由で失敗した場合
IllegalAccessException
- 指定された変換後のJavaクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合。
IntrospectionException
- イントロスペクション中に例外が発生した場合
ClassNotFoundException
- 指定された変換後のJavaクラスが見つからなかった場合
IOException
- バイナリデータの変換に失敗した場合jsToJavaBean(Object, String, ClassLoader)
,
jsToJavaBean(Object, Class)
public static Object jsToJavaBean(Object jsObject, String beanClassName, ClassLoader classLoader) throws IllegalConversionException, IOException, InstantiationException, IllegalAccessException, IntrospectionException, ClassNotFoundException
jsToJavaBean(jsObject, classLoader.loadClass(beanClassName))
を呼び出すことに相当します。
jsObject
- 変換対象のJavaScriptオブジェクトbeanClassName
- 変換後のJavaクラス名classLoader
- 変換後のJavaクラスをロードする為のクラスローダ
IllegalConversionException
- 変換処理に失敗した場合
InstantiationException
- 指定された変換後のJavaクラスが、抽象クラス、インタフェース、配列クラス、プリミティブ型、または void を表す場合。または、指定された変換後のJavaクラスが無引数コンストラクタを保持しない場合、あるいはインスタンスの生成がほかの理由で失敗した場合
IllegalAccessException
- 指定された変換後のJavaクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合。
IntrospectionException
- イントロスペクション中に例外が発生した場合
ClassNotFoundException
- 指定された変換後のJavaクラスが見つからなかった場合
IOException
- バイナリデータの変換に失敗した場合jsToJavaBean(Object, Class)
public static Object jsToJavaBean(Object jsObject, Class<?> beanType) throws IllegalConversionException, IOException, InstantiationException, IllegalAccessException, IntrospectionException
JavaScript | Java | 備考 | |
---|---|---|---|
null | → | null | - |
undefined | |||
String | → | java.lang.String | - |
java.lang.Character | 先頭1文字をCharacterに変換します。 | ||
String (バイナリ) | → | byte[] |
「String (バイナリ)」とは、 JavaScriptAPIの「Fileオブジェクト」や「VirtualFileオブジェクト」の「load()関数」などで 取得できるファイルデータ(バイナリ)の事を意味します。 |
javax.activation.DataHandler | |||
Number | → | java.lang.Number |
java.lang.Numberのサブクラスが指定された場合は、 その型に変換されます。 変換可能なjava.lang.Numberのサブクラスは以下の6クラスです。
|
Boolean | → | java.lang.Boolean | - |
Date | → | java.util.Date | - |
java.util.Calendar | |||
Array | → | 配列 |
JavaScriptのArray要素の型がすべて同じであり、 かつ、その型がJavaの配列要素の型に変換可能でなければなりません。 |
任意のJavaScriptオブジェクト | → | java.lang.String | JavaScriptオブジェクトの文字列表現が変換可能な場合に限る。 |
java.lang.Number | |||
java.lang.Boolean |
jsObject
- 変換対象のJavaScriptオブジェクトbeanType
- 変換後のJavaクラス
IllegalConversionException
- 変換処理に失敗した場合
InstantiationException
- 指定された変換後のJavaクラスが、抽象クラス、インタフェース、配列クラス、プリミティブ型、または void を表す場合。または、指定された変換後のJavaクラスが無引数コンストラクタを保持しない場合、あるいはインスタンスの生成がほかの理由で失敗した場合
IllegalAccessException
- 指定された変換後のJavaクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合。
IntrospectionException
- イントロスペクション中に例外が発生した場合
IOException
- バイナリデータの変換に失敗した場合public static Map<String,PropertyDescriptor> getBeanPropertyMap(Class<?> beanClass) throws IntrospectionException
PropertyDescriptor
」 の形式です。
beanClass
- JavaBeanクラス
PropertyDescriptor
」の形式)
IntrospectionException
- イントロスペクション中に例外が発生した場合public static Map<String,Field> getPublicFieldMap(Class<?> clazz)
Field
です。
clazz
- 対象クラス
Field
」の形式)public static Object newInstanceFilledSampleData(String beanClassName, String sampleValue) throws IntrospectionException, IllegalAccessException, InvocationTargetException, ClassNotFoundException
newInstanceFilledSampleData(beanClassName, Thread.currentThread().getContextClassLoader(), sampleValue)
を呼び出すことに相当します。
beanClassName
- 生成するインスタンスのクラス名sampleValue
- 指定されたクラスがjava.lang.String、または、java.lang.Characterだった場合のサンプルデータの値。
IntrospectionException
- イントロスペクション中に例外が発生した場合
IllegalAccessException
- 指定されたクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合
InvocationTargetException
- JavaBeanのSetterが例外をスローする場合
ClassNotFoundException
- 指定されたクラスが見つからなかった場合newInstanceFilledSampleData(String, ClassLoader, String)
public static Object newInstanceFilledSampleData(String beanClassName, ClassLoader classLoader, String sampleValue) throws IntrospectionException, IllegalAccessException, InvocationTargetException, ClassNotFoundException
newInstanceFilledSampleData(classLoader.loadClass(beanClassName), sampleValue)
を呼び出すことに相当します。
beanClassName
- 生成するインスタンスのクラス名classLoader
- beanClassNameで指定されるクラスをロードする為のクラスローダsampleValue
- 指定されたクラスがjava.lang.String、または、java.lang.Characterだった場合のサンプルデータの値。
IntrospectionException
- イントロスペクション中に例外が発生した場合
IllegalAccessException
- 指定されたクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合
InvocationTargetException
- JavaBeanのSetterが例外をスローする場合
ClassNotFoundException
- 指定されたクラスが見つからなかった場合newInstanceFilledSampleData(Class, String)
public static Object newInstanceFilledSampleData(Class<?> beanType, String sampleValue) throws IntrospectionException, IllegalAccessException, InvocationTargetException
initializeSampleData(String, Number, Boolean, Date, int)
で設定可能です。Javaクラス | サンプルデータ | 備考 |
---|---|---|
java.lang.String | SAMPLE_DATA_FOR_STRING_DEFAULT |
引数「sampleValue」が指定されている場合は、その値が設定されます。 JavaBeanプロパティの場合は「prop_プロパティ名」形式で設定されます。 |
java.lang.Character | java.lang.Stringのサンプルデータ1文字目を元に生成 | - |
java.lang.Number | new Double(SAMPLE_DATA_FOR_NUMBER_DEFAULT ) |
- |
java.lang.Boolean | Boolean.valueOf(SAMPLE_DATA_FOR_BOOLEAN_DEFAULT ) |
- |
java.util.Date | new Date(SAMPLE_DATA_FOR_DATE_MILLIS_DEFAULT ) |
「Mon June 19 2008 12:34:56 GMT+0900 (JST)」をあらわします。 |
java.util.Calendar | java.util.Dateのサンプルデータを元に生成 | - |
クラスA ├─プロパティ a : <A> ├─プロパティ b : <B> ├─プロパティ wrap : <String> ├─プロパティ a' : <A[]> └─プロパティ b' : <B[]> クラスB ├─プロパティ a : <A> ├─プロパティ b : <B> ├─プロパティ c : <C> ├─プロパティ wrap : <String> ├─プロパティ a' : <A[]> ├─プロパティ b' : <B[]> └─プロパティ c' : <C[]> クラスC ├─プロパティ a : <A> ├─プロパティ b : <B> ├─プロパティ c : <C> ├─プロパティ wrap : <String> ├─プロパティ a' : <A[]> ├─プロパティ b' : <B[]> └─プロパティ c' : <C[]>
newInstanceFilledSampleData(クラスA, "サンプル");
を実行した場合の返却値は以下のようになります。
返却値 ・・・@ ├─ a = null (∵自身と同じクラス) ├─ b ・・・A │ ├─ a = null (∵@で走査済み) │ ├─ b = null (∵自身と同じクラス) │ ├─ c ・・・B │ │ ├─ a = null (∵@で走査済み) │ │ ├─ b = null (∵Aで走査済み) │ │ ├─ c = null (∵自身と同じクラス) │ │ ├─ wrap = "prop_wrap" │ │ ├─ a' = 空の配列 (∵@で走査済み) │ │ ├─ b' = 空の配列 (∵Aで走査済み) │ │ └─ c' = 空の配列 (∵Bで走査済み) │ ├─ wrap = "prop_wrap" │ ├─ a' = 空の配列 (∵@で走査済み) │ ├─ b' = 空の配列 (∵Aで走査済み) │ └─ c' = 空の配列 (∵Bで走査済み) ├─ wrap = "prop_wrap" ├─ a' = 空の配列 (∵@で走査済み) └─ b' = 空の配列 (∵Aで走査済み)
beanType
- 生成するインスタンスのクラスsampleValue
- 指定されたクラスがjava.lang.String、または、java.lang.Characterだった場合のサンプルデータの値。
IntrospectionException
- イントロスペクション中に例外が発生した場合
IllegalAccessException
- 指定されたクラス、またはその無引数コンストラクタにアクセスできない場合。または、JavaBeanプロパティのSetterメソッドにアクセスできない場合
InvocationTargetException
- JavaBeanのSetterが例外をスローする場合initializeSampleData(String, Number, Boolean, Date, int)
public static void addExcludeClass4newInstanceFilledSampleData(Class<?> excludeConvertClass)
newInstanceFilledSampleData(Class, String)
等のメソッドで、
サンプルデータ設定済みインスタンスの生成を行わないようするクラスを追加します。
excludeClassList4newInstanceFilledSampleData
- サンプルデータ設定済みインスタンスの生成を行わないようするクラスJavaScriptUtility#newInstanceFilledSampleData(Class, String)}
,
JavaScriptUtility#newInstanceFilledSampleData(String, String)}
,
JavaScriptUtility#newInstanceFilledSampleData(String, ClassLoader, String)}
public static void initializeSampleData(String str, Number num, Boolean bool, Date date, int arrayLength)
newInstanceFilledSampleData(Class, String)
メソッドで利用されるサンプルデータを初期化します。
str
- java.lang.String用のサンプルデータ。空文字設定不可。SAMPLE_DATA_FOR_STRING_DEFAULT
が設定されます。num
- java.lang.Number用のサンプルデータ。SAMPLE_DATA_FOR_NUMBER_DEFAULT
)が設定されます。bool
- java.lang.Boolean用のサンプルデータ。SAMPLE_DATA_FOR_BOOLEAN_DEFAULT
)が設定されます。date
- java.util.Dateの用のサンプルデータ。SAMPLE_DATA_FOR_DATE_MILLIS_DEFAULT
)が設定されます。arrayLength
- サンプルデータが配列の場合の要素数。SAMPLE_DATA_ARRAY_LENGTH_DEFAULT
が設定されます。
|
intra-mart 7.0.9 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |