J2EEアプリケーションの初期化処理を実装するにあたり、Servlet#init とContext#initializerのどっちが先か気になったので、WebLogic Server 9.2で試してみた。
結果はContext#initializerが先。
WebLogic独自仕様じゃないよね~と気になってググっていたら良いドキュメントを発見。
http://www.cresc.co.jp/tech_info.html
以下、2.3 サーブレットのライフ・サイクル(Servlet Life Cycle)の2.3.2 初期化(Initialization)からの抜粋
この設定オブジェクトにより、そのサーブレットはウェブ・アプリケーションの設定情報からの名前-値の初期化パラメタにアクセスできる。この設定オブジェクトによりサーブレットはそのサーブレットの実行時環境を記述したオブジェクト(ServletContext インターフェイスを実装した)にアクセスできるようになる。ServletContextインターフェイスに関する更なる情報は第4章の「サーブレット・コンテキスト」を見られたい。
「オブジェクト(ServletContext インターフェイスを実装した)にアクセスできるようになる」とあるので、Servletの仕様としても間違い無いんだね。