初めて投稿します。Curl初心者です。
今、CurlORBを使用してサーバサイドのJavaと連携を行っています。
CurlORBのデータ型として、Date型がありますが、Date型の変数に1970年1月1日以前の日付を
Date.valueOfで設定して、サーバサイドに返そうとすると、下記の予期していないアプレット例外のメッセージが表示されてしまいます。
「DateTimeException: '1960-0-0 00:00:00.0000000'をDateTimeDataに変換することができません:指定された日時が範囲外です。
サーバサイドに1970年1月1日のデータをDate型で渡す方法はないのでしょうか。
通常のDateTime では、1970-01-01 00:00:00.000000 +0000 から 2038-01-19 03:14:07.000000 +0000 までの範囲のみ利用可能なので、それを超えた日付を指定するためには、タイム ゾーンをUTCで指定する必要があります。
Code:
{DateTime
zone = DateTimeZone.utc,
"1969-01-01"
}
Quote:
(12-26-2012, 02:13 PM)umemura Wrote: [ -> ]通常のDateTime では、1970-01-01 00:00:00.000000 +0000 から 2038-01-19 03:14:07.000000 +0000 までの範囲のみ利用可能なので、それを超えた日付を指定するためには、タイム ゾーンをUTCで指定する必要があります。
Code:
{DateTime
zone = DateTimeZone.utc,
"1969-01-01"
}
Quote:
返信ありがとうございます。
DateTimeには、zoneプロパティがあるとのことですが、ORBで使用するDateにはzoneはないのでしょうか。
ない場合は、1970年1月1日以前の日付をDateで扱えないのでしょうか。
試していませんが、DateTimeでサーバに送信して、サーバ側でDateTimeData.getDateメソッドを利用することで、取得できるかもしれないです。
一度おためしください。
{Date.from-millsecond}を使ってはどうでしょうか?
←このメソッド、スペル間違っている気が・・・。
(01-18-2013, 05:22 PM)hokada Wrote: [ -> ]{Date.from-millsecond}を使ってはどうでしょうか?
←このメソッド、スペル間違っている気が・・・。
返信が遅くなりすみません。
教えていただいた{Date.from-millsecond}で、以下のようにすることで1970年1月1日以前を
扱うことができました。
let dtateTime = {DateTime "1969-01-01", zone = DateTimeZone.utc}
let dtdataateTimeData = dt.data
let date_dtate = {Date.from-millsecond dtdata.epoch-second * 1000}
ありがとうございました。