WDC SE 1.30_220 制限事項 ----- WebWorkBench DeveloperCafe,WebReportCafe共通の制限事項 ----- 1.setBigDecimal()時の丸め込み WDCではDBのNUMBER(x,y)およびNUMERIC(x,y)のカラムを double型の内部変数にマッピングしています。 したがって、doubleの制度を超える値の保持ができません。 (有効桁数は15〜16桁となります。) 例: NUMERIC(20)のカラムがあるときに setBigDecimal(i, new BigDecimal("12345678901234567890")); を行うと、値としては 12345678901234567000 が設定されます。 2.FLOAT型のカラム java.sql.Types.FLOAT型にマッピングされるカラムを使用している場合 WDCでは jp.co.tenartni.data.Type.DOUBLE型にマッピングされます。 従って、値の設定や取り出しには setFloat() や getFloat() を使用するのではなく、 setDouble() や getDouble() を使用してください。 尚、java.sql.Types.REAL型にマッピングされるカラムを使用している 場合には、jp.co.tenartni.data.Type.FLOAT型にマッピングされます。 こちらではsetFloat(), getFloat()が利用可能です。 3.PostgreSQL oid型のカラムが使用できません。oid型のカラムがjava.sql.Types.INTEGER型にマッピングされてしまう ためです。(PostgreSQL のJDBCの問題と思われます。) bytea型を使用してください。 4.Microsoft SQL Server 2000 timestamp型のカラムが使用できません。timestamp型のカラムがjava.sql.Type.BINARY型にマッピング されてしまうためです。(SQL Server 2000 のJDBCの問題だと思われます。) datetime型を使用してください。 5.SQLの検索パラメーター名 SQLパラメータ名に使用する文字は、半角の英数字およびアンダーバーと してください。これ以外の文字を使用した場合、WRCの計算式などが正常に 動作しない恐れがあります。 5.NCHAR型 NCHAR型は使用できません。 DBの種類によっては、JDK6.0以上の環境でNCHAR型を使用するとエラーとなります。 ----- WebWorkBench DeveloperCafeの制限事項 ----- 1.一覧形式の入力 一覧形式で入力を行う場合、Webブラウザから入力された値の順序通りに WDC側で値を取り出せなければなりません。 - Webブラウザ - Webサーバー間に、ファイアーウォールなどの機器があり それがリクエストパラメーターの順序を入れ替えるような処理をしていた 場合、正常に動作しません。 - HttpServletRequest#getParameterValues(String name)メソッドにより 入力された値を取得していますが、このメソッドがWebブラウザから受信 した順序通りに入力値を返す必要があります。 ※例: のような場合、 HttpServletRequest#getParameterValues("a") は、{"a1", "a2"} を返さなければなりません。 もしも、HttpServletRequest#getParameterValues(String name)が 順序通りに入力値を返さないようなAPサーバーの場合は、 一覧形式の入力を行わないなどの回避策を取ってください。 2.JDBCデータソース利用時のデータ取得 JDBCデータソースを利用している場合、データ取得の際にAutoCommit=trueが 適用されます。 AutoCommitさせたくない場合は、DefaultActionのdoCustomProvide()内で Connection#setAutoCommit(false)を行ってください。 3.XMLDataReaderでのデータの読み込み Xercesを利用して長い文字列を読み込もうとすると、前方の文字列が読み飛ばされる場合があります。 なお、XMLDataReaderクラスは、現在はWDC内部では使用されておりません。