環境はjavaee6 + glassfish3.1系。
persistence.xmlを読み込むあたりで以下のエラーが発生。
「NoSuchMethodError in javax.persistence.Table.indexes()[Ljavax/persistence/Index」
結論として
hibernate-entitymanagerのjarバージョンを
4.3.0.CR2
↓
3.6.10.Final
に変更したら治りました。
javaEE6はJPA2.0だから4系のバージョンは対応していなかったのかもしれない。
2013年12月31日火曜日
2013年12月27日金曜日
【JSF2】richfacesを動かしたかったのだが、、
下記のサイト様を参考にrichfacesを使ってみようと思いましたが、うまく行かず。。。。
http://kikutaro777.hatenablog.com/entry/2013/07/07/233121
環境は以下
・eclipse4.3 kepler
・glassfish3.1 または glassfish3.1.2.2 でも同様のエラーが発生。
cannot Deploy sample
deploy is failing=デプロイメント中にエラーが発生しました: Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: java.lang.NoClassDefFoundError: org/atmosphere/cpr/AtmosphereServlet。詳細はserver.logを参照してください。
primefacesは問題なく動作確認できたのですが、richfacesはうまくいきませんでした。
よくわかりません。
http://kikutaro777.hatenablog.com/entry/2013/07/07/233121
環境は以下
・eclipse4.3 kepler
・glassfish3.1 または glassfish3.1.2.2 でも同様のエラーが発生。
cannot Deploy sample
deploy is failing=デプロイメント中にエラーが発生しました: Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: java.lang.NoClassDefFoundError: org/atmosphere/cpr/AtmosphereServlet。詳細はserver.logを参照してください。
primefacesは問題なく動作確認できたのですが、richfacesはうまくいきませんでした。
よくわかりません。
【JSF2】デフォルトエラーメッセージを変更する。
jsf-apiのjarの中を除くとメッセージファイルがある。
デフォルトロケールがjaの場合、Messages_ja.propertiesが読み込まれている。

WEB-INF配下にclassesフォルダを作成し、その配下に 自作のメッセージプロパティファイルを作成する。 (ファイル名形式はxxxx_ja_JP.properties。xxxx_ja.propertiesでもいいみたい。)
上書きしたいメッセージをプロパティに定義 (以下のサンプルでは必須エラー時のデフォルトメッセージ(キー名:javax.faces.component.UIInput.REQUIRED)を変更してみた)
faces-config.xmlに作成したメッセージファイルを定義する。
実際の画面は以下。必須エラーのメッセージが変更されたことを確認できる。
また、日付形式エラーメッセージはjsf-api内のメッセージプロパティの内容が表示されていることを確認。

WEB-INF配下にclassesフォルダを作成し、その配下に 自作のメッセージプロパティファイルを作成する。 (ファイル名形式はxxxx_ja_JP.properties。xxxx_ja.propertiesでもいいみたい。)
上書きしたいメッセージをプロパティに定義 (以下のサンプルでは必須エラー時のデフォルトメッセージ(キー名:javax.faces.component.UIInput.REQUIRED)を変更してみた)
faces-config.xmlに作成したメッセージファイルを定義する。
実際の画面は以下。必須エラーのメッセージが変更されたことを確認できる。
また、日付形式エラーメッセージはjsf-api内のメッセージプロパティの内容が表示されていることを確認。
2013年12月7日土曜日
JSF2によるカスタムバリデータのサンプル
JSF1.2系などと異なりJSF2系では必要なアノテーション定義することで設定ファイル(faces-config.xml)は必須でなくなりとてもスマートで良いですね!
なるべくならアノテーションによる既存バリデーションで済むのがベストですが、やはり、カスタムバリデータが必要なのも現実です。。
ということで、以下に携帯電話番号入力のカスタムバリデータをやってみました。
カスタムバリデータを作るには以下がポイントです。
■MobilePhoneValidator.java(カスタムバリデータクラス)
■inputSample.xhtml(入力画面)
■InputBean.java(入力画面で入力された値を格納するBeanクラス)
■inputSampleOk.xhtml(次の画面)
JSF1.2系などと異なりJSF2系では必要なアノテーション定義することで設定ファイル(faces-config.xml)は必須でなくなりとてもスマートで良いですね!
なるべくならアノテーションによる既存バリデーションで済むのがベストですが、やはり、カスタムバリデータが必要なのも現実です。。
ということで、以下に携帯電話番号入力のカスタムバリデータをやってみました。
カスタムバリデータを作るには以下がポイントです。
- javax.faces.validator.Validatorインターフェースを実装しvalidateメソッドを実装します。
- カスタムバリデータクラスに対して@FacesValidatorを付与します。また一意となるIDを定義します。(例ではパッケージ+クラス名としています。)
- 画面側でf:validatorタグのvalidatorId属性に@FacesValidatorで指定したIDを指定します
■MobilePhoneValidator.java(カスタムバリデータクラス)
■inputSample.xhtml(入力画面)
■InputBean.java(入力画面で入力された値を格納するBeanクラス)
■inputSampleOk.xhtml(次の画面)
2013年11月29日金曜日
2013年11月4日月曜日
Dell InspironMini910にUbuntu 13.04をインストールする
1.Ubuntu 13.04のISOをダウンロード。
2.unetbootinというフリーソフトを使用し、USBメモリにISOを展開する。
3.InspironMini910に2で作成したUSBメモリを差し、Ubuntu 13.04をインストールする。
4.無線LANが認識していないので、一旦有線LANでネット接続し、以下のコマンドを実行。
~$ sudo apt-get update
~$ sudo apt-get upgrade
~$ sudo apt-get install bcmwl-kernel-source
5.再起動後、無線LANが認識していることを確認。
■スペックは以下を参考に
http://abc.s65.xrea.com/dell/wiki/INSPIRON/910/
■無線LANの手順は下記参考
https://wiki.ubuntulinux.jp/UbuntuTips/Hardware/HowToSetupBcm43xx
2.unetbootinというフリーソフトを使用し、USBメモリにISOを展開する。
3.InspironMini910に2で作成したUSBメモリを差し、Ubuntu 13.04をインストールする。
4.無線LANが認識していないので、一旦有線LANでネット接続し、以下のコマンドを実行。
~$ sudo apt-get update
~$ sudo apt-get upgrade
~$ sudo apt-get install bcmwl-kernel-source
5.再起動後、無線LANが認識していることを確認。
■スペックは以下を参考に
http://abc.s65.xrea.com/dell/wiki/INSPIRON/910/
■無線LANの手順は下記参考
https://wiki.ubuntulinux.jp/UbuntuTips/Hardware/HowToSetupBcm43xx
2013年7月20日土曜日
オートマトン理論について
オートマトン理論がおもしろい。
以下のサイトがわかりやすい。
プログラマなら知っておいたほうが良い。
因みに「応用情報技術者試験(AP)」の範囲でもある。
■オートマトンの基礎
http://www1.adachi.ne.jp/katz/primer/automata.html
■川渡り問題
http://ja.wikipedia.org/wiki/%E5%B7%9D%E6%B8%A1%E3%82%8A%E5%95%8F%E9%A1%8C
■3人の宣教師と3人の土人
http://www.umechando.com/playroom/04.htm
以下のサイトがわかりやすい。
プログラマなら知っておいたほうが良い。
因みに「応用情報技術者試験(AP)」の範囲でもある。
■オートマトンの基礎
http://www1.adachi.ne.jp/katz/primer/automata.html
■川渡り問題
http://ja.wikipedia.org/wiki/%E5%B7%9D%E6%B8%A1%E3%82%8A%E5%95%8F%E9%A1%8C
■3人の宣教師と3人の土人
http://www.umechando.com/playroom/04.htm
2013年6月29日土曜日
2013年6月15日土曜日
Twitterウィジェットが表示されない件について
ホームページに貼り付けていたTwitterのタイムラインのウィジェットが表示されなくなっていた。。
原因はサービスが終了したようだ。
新たに再作成する必要がある。
参考サイト: Twitterタイムラインを表示するウィジェットが提供終了になるとのことです
原因はサービスが終了したようだ。
新たに再作成する必要がある。
参考サイト: Twitterタイムラインを表示するウィジェットが提供終了になるとのことです
2013年5月25日土曜日
レスポンスヘッダ情報を全て表示
Android開発中にて。
サーバから取得データが文字化けしていたため、
サーバからのレスポンスの内容を確認用。
ヘッダ情報を表示すれば文字コードも確認できます。
// ※responseはHttpResponseクラスを表す。
for (Header header : response.getAllHeaders()) {
String sHeaderName = header.getName();
String sHeaderValue = header.getValue();
Log.d("HTTP Test", "getAllHeaders() : " + sHeaderName + " : " + sHeaderValue );
}
登録:
投稿 (Atom)