JBoss
JAX-RS Specでは、BeanValidationのバリデーションエラー時には、エラー原因を返すことのみが規定されており、メッセージのフォーマット自体は実装依存です。 7.6 Validation and Error Reporting In all cases, JAX-RS implementations SHOULD include a re…
この記事は赤帽エンジニア Advent Calendar 2018の12/4分の記事です。 Red HatでJBoss EAPのサポートエンジニアをしています。自由なAdvent Calendarなので、自由に勉強メモを書いてみます。JBossのようなAPサーバはクラスタメンバの探索に従来マルチキャス…
この記事は Java EE Advent Calendar 2016の12/2分の記事です。 明日は@opengl_8080さんです。Java EEが使われているシステムは、改修を加え続けながら数年〜十年と運用し続けるライフサイクルの長いシステムが多くあります。アプリケーションを全面刷新する…
まだまだエンタープライズな分野ではJAX-WSがシステム間連携に使われることが多い。wsdlからスタブを生成するMavenプラグインの使い方に関するメモ。 JAX-WS Mavenプラグイン https://jax-ws-commons.java.net/jaxws-maven-plugin/ にJAX-WSの参照実装Metro…
Java EE を使っている人なら多くの人が遭遇するクラスローダリーク。EclipseなどのIDEでホットデプロイしながら開発していると、突然APサーバから応答がなくなったり、java.lang.OutOfMemory : PermGenが出力されたりする。原因についてはnekopさんのスライ…
定番のスケジュール実行としてはcronがあるが、Java EEにおいても同様の機能が用意されている。Java EE 5以前では『x秒後に実行する』ような機能しかなかったが、Java EE 6(WLS12c/JBossEAP6など)以降ではcron風にカレンダー形式で設定ができる。 使い方 Jav…
以前の記事でトラブルが起きた後の初動対応を書いてみたが、いざトラブルに遭遇すると、まず再起動してからどうするか考えるケースが多いと感じている。しかし何も情報がないと『情報がない/再現方法が不明』などの理由からそのままお蔵入りになってしまう。…
アプリケーションサーバでありがちなトラブルとしてDB接続プールの枯渇がある。原因はチューニングミスやSQLが長時間化してプールにコネクションが返って来ないなど色々とあるが、負荷試験時にモニタリングしておくと多くの問題は事前に検知・対処できる。JB…
Javaトラブルでは『情報がなくて、再現もなかなかしません』といった状況に陥ることがある。このような状況を回避するために、以下の3つの代表的なトラブルを例に、アプリケーションサーバを再起動する前に何を取得すれば良いのかをまとめてみる。 アプリケ…
JBossAS7でEJBのコンテナ管理トランザクションが動かないことではまっていたが、WebコンソールとCLIでJTAを有効にするかどうかのデフォルトが違ったのが原因だったようだ。 Webコンソールの場合 Webコンソールから作成すると、デフォルトでUse JTA?はfalseに…
Spring3 入門を読んでいて、トランザクションの開始・終了がEJBを使ったJavaEEアプリケーションでも出力できないか考えてみた。 CDIのTransactionnal Observerで試行錯誤 : 失敗 CDIでは、トランザクションの成功・失敗・開始などの合わせてイベントを起動す…