7月 132012
 
DOM3Events関連
  • ActionScript3(以下AS3)はDOM Level3 Eventsに準拠している。
     (イベントリスナの優先度など、一部に非準拠仕様も追加されている)
  • リスナは同期処理であると定義されており、1つのリスナ実行中に他のリスナが同時に実行される事はない。
  • リスナは追加された順に実行される。
    ※AS3ではaddEventListenerメソッドで実行優先度を指定できる。
  • リスナの実行順序は規定されているが、MouseEventKeyboardEvent等の一部を除きイベントの発生順序までは規定されていない。
  • EventTarget.dispatchEvent()によって新たにイベントが発生させられた場合、発生させたリスナの処理は新たなイベントの伝播が完了するまで再開しない。
  • EventオブジェクトのcurrentTargeteventPhaseプロパティは、DOM Eventsの実装によって自動的に更新されるもので、読み取り専用である。
7月 132012
 

環境:Flex2.0.1(どうやらFlex3.0でも変わってなさそう?)

このメモ以降にも色々調べたりAdobeとやりとりしたはずだが、よく覚えてない…
FlashPlayer10との絡みもあったはず。

FlexのTextInputはimeModeプロパティを指定した時変な動きをする。

以下のように入力項目が並んでいるとする。

  • 入力①:IME制御なし
  • 入力②:ひらがな
  • 入力③:IME制御なし

①にフォーカスがある状態で、IMEがONかつひらがな入力の場合、
①→②→③とフォーカスを移動すると③の時点でIMEがOFFになってしまう。
ちなみにIMEはOFFにされるが、変換モード(全角カタカナ、半角英数など)は①の状態を記憶しておき、③に移る時に元に戻している。

③では、②で変更されたモードをそのまま引き継ぐのが通常の動作のように感じる。
個人的には①のモードを記憶しておいて、戻ってくれたほうが使い勝手がいいと思うのだけど。。
Continue reading »

7月 132012
 
  • タイトルの長さとボタンの幅で決まる。
  • 継承でどうにかする事もできそうにない。
  • タイトルの末尾にスペースを付加して調整する事は可能。
7月 132012
 

欧米仕様の為か、0が省略される

  • 0.1→.1
  • 1.1→1.1
  • 0.01→.01

0に相当する文字列を渡した場合フォーマットされない

  • 00.01→.01
  • 00.00→00.00
  • 001→1
  • 000→000

useThousandsSeparatorがfalseの場合、整数部はフォーマットされない
※precision=”2″の場合

  • 01234→01234.00
  • 002.5→002.50
7月 122012
 

OracleSQLでは/**/の開始文字と終了文字は空白や改行でテキストから切り離す必要は無いが、SQL*Plusでは空けなければならない。

Oracle SQLの基本要素

  • スラッシュとアスタリスク(/*)を使用してコメントを開始します。コメントのテキストを続けます。このテキストは複数行にまたがってもかまいません。アスタリスクとスラッシュ(*/)を使用してコメントを終了します。開始文字と終了文字は、空白や改行によってテキストから切り離す必要はありません。
  • –(ハイフン2個)を使用してコメントを開始します。コメントのテキストを続けます。このテキストは複数行にまたがることはできません。改行によってコメントを終了します。

SQLの入力に使用するツール製品には、追加の制限事項があるものもあります。たとえば、SQL*Plusを使用している場合、デフォルトでは複数行のコメント内に空白行を入れることはできません。詳細は、データベースのインタフェースとして使用するツール製品のドキュメントを参照してください。

SQL*Plusでのスクリプトの使用

SQLのコメント・デリミタ(/*…*/)は、スクリプト内の個別の行に入力するか、SQLコマンドと同じ行に入力するか、またはPL/SQLブロック内の行に入力します。

コメントの初めのスラッシュとアスタリスク(/*)の後に空白を入力する必要があります。

コメントは、次のように複数の行にわたっていてもかまいませんが、コメント内にコメントをネストさせることはできません。

[sql]/* Commission Report
to be run monthly. */
COLUMN LAST_NAME HEADING ‘LAST_NAME’;
COLUMN SALARY HEADING ‘MONTHLY SALARY’ FORMAT $99,999;
COLUMN COMMISSION_PCT HEADING ‘COMMISSION %’ FORMAT 90.90;
REMARK Includes only salesmen;
SELECT LAST_NAME, SALARY, COMMISSION_PCT
FROM EMP_DETAILS_VIEW
/* Include only salesmen.*/
WHERE JOB_ID=’SA_MAN’; [/sql]
7月 122012
 

※ RFC7230 時点の情報に更新 → HTTP/1.1 のコネクション管理の理解メモ – CAT EARS

HTTPリクエストの処理中(長いAPサーバーの処理等)にタイムアウトなどでTCPコネクションが切断された場合、HTTPクライアントはRFC2616に従い同じリクエストを勝手に再送する事がある。(SHOLDとなっているのでその場合の方が多いかと)
なので、場合によっては二重POSTとなってしまう。。
非冪等メソッドの自動再試行は不可。

これはHTTPベースのプロトコル(SOAPやAMF、WebDAV等のRPC)全てに当てはまるため、RPCを使用する際には注意が必要である。
失敗パターンは リクエスト送信→失敗→再送信→失敗→切断(エラー?) が標準動作。

RFC2616 8.1.4 Practical Considerations より抜粋

A client, server, or proxy MAY close the transport connection at any
time. For example, a client might have started to send a new request
at the same time that the server has decided to close the “idle”
connection. From the server’s point of view, the connection is being
closed while it was idle, but from the client’s point of view, a
request is in progress.

This means that clients, servers, and proxies MUST be able to recover
from asynchronous close events. Client software SHOULD reopen the
transport connection and retransmit the aborted sequence of requests
without user interaction so long as the request sequence is
idempotent (see section 9.1.2). Non-idempotent methods or sequences
MUST NOT be automatically retried, although user agents MAY offer a
human operator the choice of retrying the request(s). Confirmation by
user-agent software with semantic understanding of the application
MAY substitute for user confirmation. The automatic retry SHOULD NOT
be repeated if the second sequence of requests fails.

参考:

7月 122012
 
  • コマンドの引数として渡されるFQDNの末尾にスペースかドットが付加された場合に発生する事が多い。
    →HELO、EHLO、MAIL FROMなどのコマンド
  • コード5.5.4は、RFC1893に定義されたとおり、コマンド引数が不正であり、送り先などを修正しなければ解決できそうにない恒久的なエラーを示す。
  • 大抵のSMTPサーバは末尾のスペースやドットを無視するが、RFC821および1869に厳しいサーバではエラーとなる事がある。
    →Microsoft Exchange 2000やMicrosoft Exchange Server 5.5 SP4など

参考: