JSFのAjaxでValidationが動かない

と思ったらh:messageタグのid値をf:ajaxのrenderに書き忘れてただけでした。 つまりValidationされてたけど結果が描画されてないだけ。Wicketでもこのミスをよくやるんだよな・・・

ui:repeatの中のf:ajax

自分メモ。ui:repeatの中でf:ajaxを使う場合、renderの指定の仕方に注意が必要です。例えばui:repeatでボタンを配置し、自身を含む親タグ全体を再描画したい場合、 <f:ajax render=":f:list" /> のように根元からのパスを指定しないといけないようです。 頭の : を忘れるんですよね。。</f:ajax>…

CDIで管理されるオブジェクトを得る

CDI管理のオブジェクトを得るには以下のようにします。 @Inject private BeanManager beanManager; @SuppressWarnings("unchecked") private <T> T getBean(final Class<T> pType) { final Set<Bean<?>> beans = this.beanManager.getBeans(pType); final Bean bean = this</bean<?></t></t>…

CDIのAOPはAOPプロキシ

当分の間、ビール1杯につき50円貯金することにしました。せこいですが、義援金にしようと。さてCDIではまった点について。 CDIのAOPは「AOPプロキシ」という技術で実現されているようです。 「AOPプロキシ」とは 大雑把に言うと オリジナルを継承していて…

JAX-RSでEJBを使う

タイトル通りだけど、はまったのでメモ。 こちらのサイトを参考に解決。 http://www.coppermine.jp/hasunuma/weblog/2010/05/jax-rsejbinject.htmlなぜこうしないといけないかは分かっていないので勉強が必要です。

JSFでエラーのある項目の背景色を変える

さて今回はJSFで「エラーのある項目の背景色を変える」をやってみます。 Strutsにある機能だし、これくらい簡単にできるだろう、と思ってたら・・・けっこうめんどくさいことになっています。 基本的なアイデア 標準で提供されているh:inputTextを使って試し…

JSFでのメッセージにpropertiesファイルを使う

JSFでメッセージをpropertiesファイルに書く方法を調べてみました。具体的には、以下を行う方法の調査です。 メッセージをpropertiesファイルに書く メッセージにはプレースホルダを含める そのメッセージからFacesMessageを作る(もちろんプレースホルダを…

ConversationScopedを使ってみる

EntityManagerで困っているのはちょっと置いておいて、ConversationScoped(会話スコープ)を使ってみます。 ポイントはConversationインターフェイスを持たせるクラス @ConversationScopedアノテーションはConversationインターフェイスと共に使う、という…

JavaEE6ではまったことをいくつか

組み込みGlassfish3.0.1でJavaEE6を試していてはまったところをいくつかメモしておきます。 JSFのXHTMLからは@Namedアノテーションが付いたBeansにしかアクセス出来ない JSFのXHTMLの中からアクセスするBeansには@Namedアノテーションが必須らしいです。 と…

mutalbeなSetの+は新しいインスタンスを作る

遅ればせながらScalaの勉強を始めました。教科書はコップ本。Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala)作者: Martin Odersky,Lex Spoon、Bill Venners,羽生田栄一,長尾高弘出版社/メーカー: インプレス発売日: 2009…

JSF2.0+JPA2.0+eclipse 構築編:JPAでの例外の解消(その4)

引き続き例外の調査です。前回Glassfishのサーバを立ててデプロイしてみて、persistence.xmlのtransaction-typeをRESOURCE_LOCALにしているために起動に失敗している、ということが分かりました。今回はここをJTAに変えて動作させてみます。 データソースの…

JSF2.0+JPA2.0+eclipse 構築編:JPAでの例外の解消(その5)

さて前回、GlassfishサーバでJPAを動作させることに成功しました。 persistence.xmlのtransaction-typeをJTAにすればいいようです。 今回は組み込みGlassfishでこれをやってみます。 データソースの追加 組み込みGlassfishでデータソースを追加するにはどう…

JSF2.0+JPA2.0+eclipse 構築編:JPAでの例外の解消(その3)

相変わらず例外の原因が分からず苦しんでいます。前回、persistence.xmlに誤りがないことを確認しました。今回は組み込みではなく、サーバ形式のGlassfishにWARをデプロイしても同じ現象が起きるかどうかを見てみたいと思います。 Glassfish 3.0.1 のインス…

JSF2.0+JPA2.0+eclipse 構築編:JPAでの例外の解消(その2)

前々回から苦しんでいる例外の原因、さっぱり分かりません。ちょっと目先を変えて、persistence.xmlの書き方がまちがってないことを確認しておきます。 テスト用mainメソッドの作成 EmployeeServiceにmainメソッドを作ってgetAllメソッドを呼び出してみまし…

JSF2.0+JPA2.0+eclipse 構築編:JPAでの例外の解消(その1)

JPAを使おうとしたら例外が出たので原因を調査して解消を目指します。 なんで素直に動作してくれないんだろ?例外スタックトレースの肝(と思われる)は以下。 java.lang.IllegalStateException: Unable to retrieve EntityManagerFactory for unitName null…

JSF2.0+JPA2.0+eclipse 構築編:JPAを動かす

前回までのプロジェクト構成にミスがありました。 src/java/test下のパッケージが「sandbo.***」になっていました。 正しくは「sandbox.***」です。さてJPAに入りましょう。persistence.xmlを書かないといけません。なんかトラブる予感がするなぁ。 DBの選定…

JSF2.0+JPA2.0+eclipse 構築編:やり方を見直す

前のエントリで glassfish-embeddedの起動が遅い web.xmlを書くのがめんどい とぼやいていたらid:shinさんにコメントで耳寄り情報をいただいたので早速試してみました。 glassfish-embeddedは再起動せずに再デプロイするようにする 今まではクラスに変更入れ…

JSF2.0+JPA2.0+eclipse 構築編:JSFに触れる

JSFがちゃんと動いているかどうかを検証するために、ちょっとした動的ページを作ってみます。 拡張子の変更 前回までの設定でJSFのページには拡張子「.jsf」でアクセス出来るようにしていました。でもこれではサーバ側の実装がJSFというのがバレバレです。こ…

JSF2.0+JPA2.0+eclipse 構築編:現時点のプロジェクト構成

前のエントリでBootクラスの作りを見直し、更にweb.xmlをなくすという暴挙(?)に出たので、ここでいったんプロジェクトの中身を確認しておきます。 ファイル構成 現在のファイル構成です。 web.xmlを削除してServletRegistererを追加しています。 ファイル…

JSF2.0+JPA2.0+eclipse 構築編:glassfish-embeddedを動かす

プロジェクトを作ったところで、次は何をするか・・・選択肢としては JPAのエンティティを作る glassfish-embeddedを動かす と2つくらいでしょうか。まだ私がJSFを触ったことがないので、そちらにつなげるために、まずはJavaEEコンテナを動かすのを目標にし…

JSF2.0+JPA2.0+eclipse 構築編:eclipseプロジェクトの作成

JSF2.0+JPA2.0をeclipseで開発する環境の構築に挑戦してみます。 glassfish-embeddedを利用 プロジェクトで完結した環境を作るためにglassfish-embeddedを利用します。 GlassfishはオープンソースのJavaEEコンテナで、Glassfish3.0.XはJavaEE6の仕様を実装し…

JSF2.0+JPA2.0+eclipse 導入編

JSF2.0+JPA2.0をeclipseで開発する環境の構築に挑戦してみます。 結果でなく過程をなるべく省略せずにメモしていきます。 ちなみにこの組み合わせで仕事したことはありません。 この組み合わせのメリット JavaEE標準の技術なので特定ベンダにロックオンされ…

JSF2.0+JPA2.0+eclipse 感想編:JSF

まだ途中ですがJSF触ってて思ったことのメモ。 URLの拡張子が「.jsf」なのは、「.do」なのと同じくらいいただけない なので次からは「.xhtml」でアクセスできるようにします。 glassfish-embeddedの起動が遅い JSFに慣れるためにTry&Errorで何度もweb.xmlやM…

JSF2.0+JPA2.0+eclipse 構築編:FacesServletを動かす

さていよいよJSFの動作に挑戦します。私にとっては未知の領域。JSFの勉強も並行してやります。 まずはFacesServletの登録から。 web.xmlにFacesServletを登録 WebContent/WEB-INFの下にweb.xmlを作ります。 中身はこんな感じで。

開発環境を作るときに気を付けてること

これまで仕事でJavaをやるときはほぼ100%、eclipseを使ってきました。 数少ないこれに当てはまらないケースはと言えば、エディタとjavac(笑)さて最近は自分でPG書くより人に書いてもらう機会の方が多くなり、開発環境を作って提供する機会が増えました。環…

技術系ブログ書いてみます

Javaによるエンタープライズ開発に興味があるんですが、 仕事ではめっきり自分でプログラム書く機会が減りました。 でも趣味でよく 「こんな開発環境で物作れたらおもしろいなー」と 思いながらeclipse触ってるんで 調べたことのメモなど書いていこうと思い…