タグ

ブックマーク / kikutaro777.hatenablog.com (23)

  • JavaFX Nightに参加しました~ #javafx_ja - Challenge Engineer Life !

    最近、勉強会に参加しましたエントリしか書いてない気がするのですが…(^^; 昨日11/25に行われた「JavaFX Night」に参加してきました。 JavaFX Night - 日 JavaFX ユーザグループ | Doorkeeper ここ最近JavaFXを触っていないのですが、いつか仕事で使ってみたいと思っているのでネタ収集はしていかないと。 発表はスライドが公開されているのと、@yusukeさんによって早くもYouTubeに動画がアップされているので、参加できなかった方はそちらでみれます!!以下スライドと動画リンクもまとめておきます。 JavaFXにダイアログがやってくる @btnrougeさん Javafx dialogs from Kenji Hasunuma @btnrougeさん講演動画 JavaFXにダイアログがやってくる #javafx_ja #jjug - YouT

    JavaFX Nightに参加しました~ #javafx_ja - Challenge Engineer Life !
  • PrimeFacesのボタンでAjaxとimmediateが絡んでキャンセルボタンが上手く動作しない時 - Challenge Engineer Life !

    わかりにくいタイトルですみません(^^; JSFで必須バリデーションなどを無視して画面遷移したい場合(戻るボタン、みたいな)、通常はCommandButtonの属性にあるimmediateをtrueにして回避することがあると思います。 自分も今までこれで問題なく進んできたのですが、今日、上手く対応できないケースがありました。 具体的には ajaxを利用しているCommandButton 同一の画面内で更新 のケースです。画面遷移するようなケースは問題ないのですが、上記は駄目でした。 簡単なサンプル作ったら再現できたので以下に具体例を載せます。 まずは話をわかりやすくするため、普通の例から並べてみます。 入力フォームがあって、入力をキャンセルする 例えば…ですが、何かの入力項目があって、そこに文字を入れたけど、キャンセルして空白にする、みたいなケースです。 イメージは下図のような感じでテキス

    PrimeFacesのボタンでAjaxとimmediateが絡んでキャンセルボタンが上手く動作しない時 - Challenge Engineer Life !
    tarchan
    tarchan 2014/08/01
    >asyncをtrueにして、processに@thisを指定する
  • #JJUG&#JGGUG 共催ナイトセミナー「2時間で分かる!次世代ビルドツールの本命Gradleの全貌」に行ってきました - Challenge Engineer Life !

    タイトルがめちゃくちゃ長くなってしまった(^^; 今日のJJUGナイトセミナーはイベント告知後、すぐにキャンセル待ち状態となっていたので登録を諦めていたのですが…今日のお昼にみたら空きができてた!ので申し込んで行ってきました。 http://jjug.doorkeeper.jp/events/10618 Mavenはもう古い、時代はGradleだ!的な話はチラホラ聞いたことがありましたが、私は普段Mavenしか利用しておらず、実際にGradleを触ったことはないので、今日参加して色々と話が聞けて良かったです。 Gradleの家サイト http://www.gradle.org/ Gradle 日語ドキュメント http://gradle.monochromeroad.com/docs/index.html 発表の中でも紹介がありましたが、GradleはSpringやHibernateの

    #JJUG&#JGGUG 共催ナイトセミナー「2時間で分かる!次世代ビルドツールの本命Gradleの全貌」に行ってきました - Challenge Engineer Life !
  • Java 8でSpark 2.0.0が楽しそう - Challenge Engineer Life !

    今年はDropwizardが盛り上がる、という話をチラホラ聞きます。 今年流行るかもしれないDropwizardフレームワークを使ってみる 2014ブレイク確実!JavaベースのポータブルなWebフレームワーク Dropwizard DropwizardでWebアプリケーションを作る リリースノートをみるとバージョンとしては2013年3月に0.6.2が出て、2014年6月現在0.7.x系のようです。 0.7.0-SNAPSHOTのリリースノートみると、「Upgraded to Java 7」とあって、Java 8出たんだけどなぁと思ったり。 そこで思い出したのですが、Java 8が出たとき話題になっていたSparkってどんななんだろう?と触ってみました。 Spark Micro Web Framework トップページの作りがうまい感じで http://www.sparkjava.com/

    Java 8でSpark 2.0.0が楽しそう - Challenge Engineer Life !
  • JavaFXとSendGridで簡易送信メーラーSendGridFXを作る! - Challenge Engineer Life !

    少し前にSendGridへ登録したのですが、結構放置してました(^^; 登録の流れやJavaで送信する簡易プログラムは前のエントリを参照下さい↓ JavaでSendGridを利用したメール送信 sendgrid4j使うとJavaで簡単にSendGrid経由にメール送れるので何か面白いことできないかなぁ、と思ってたのですが、最近遊んでるJavaFXと合わせてみました。 名付けてSendGridFX!(なにそれ すごい簡単なプログラムですが、JavaFXHTMLEditorコンポーネントを使って、SendGrid経由でHTMLメールを送る、というものです(^^;それだけ 画面は以下のような感じで、ラベルとテキストとボタン、そしてHTMLEditorだけの超シンプルな構成です。 宛先とタイトルを入れて、メール内容をHTMLEditorで書きます。 HTMLEditorで フォント色やサイズ、太

    JavaFXとSendGridで簡易送信メーラーSendGridFXを作る! - Challenge Engineer Life !
  • Querydslを触ってみる - Challenge Engineer Life !

    今のJava EE開発では、JPQLを書く際 動的クエリ(Dynamic Query) 名前付きクエリ(Named Query) を使うようにしていて、来、型のことなど考えるとCriteriaで書くべきだなんだろうな…と思いつつ、可読性や簡易性を優先して上記選択にしています。 ただ、どうしても動的クエリはStringBuilderなどでクエリをダラダラと連結することになって、わりとイケてないらしい…ですね。 ということで、前に@megascusさんがブログで紹介されていたQuerydslを思い出し、これから少し触っていこうかなと。 QuerydslでJPAが思ったよりも捗る 上記ブログ記事の中にあるサンプルコードや、公式サイトのチュートリアルに接頭辞「Q」が付いたEntityクラスみたいなものが出てくるので、なんなんだろあれ?と思ってたのですが、定義したEntityクラスをベースにQue

    Querydslを触ってみる - Challenge Engineer Life !
  • JSFのデバッグって…? - Challenge Engineer Life !

    最初に結論を書いておくと JSFのデバッグではこれで完璧だ! というエントリではないです(^^; 自分がやってることをまとめたレベルで、むしろ皆どうやってるんだろ…的な(^^; …… … 前回のJava EE 6開発でちょこちょこハマった点の1つに、JSFのビューが思うようにいかない…というのがありました。 しょぼいミスによるエラーとしては例えば IDの指定が重複している IDの指定が間違っている とかですね(^^; 具体的には以下のような記述ですが、実行するとこれらはわかりやすいエラーとなるので問題ないです。 IDの指定が重複している例 <h:inputText id="txtInput" value="#{indexBean.inputText}" /> <!-- さすがにこんな近さでIDが重なるのは少ないけど、色々なものを挟んだ場合など --> <h:inputText id="tx

    JSFのデバッグって…? - Challenge Engineer Life !
  • #JJUG_CCC Spring 2014で「初めての Java EE 開発から学んだこと」というタイトルで発表させて頂きました! - Challenge Engineer Life !

    昨日、ベルサール西新宿で開催されたJJUG CCC Spring 2014でJava EEに関する発表をさせて頂きましたm(_ _)m セッションに参加して頂いた方々、当にありがとうございました!! また、先月、日オラクルさんのJavaセミナーで講演させて頂いたときのレポートも公開されましたm(_ _)m 「顧客ニーズへの柔軟かつ速やかな対応」、「開発環境のカイゼン」──Java EE 6の採用で構造計画研究所が得たメリット http://t.co/8acwAhpfwm— builderjp (@builderjp) 2014, 5月 19 1年半前にボスからJavaでのWeb開発を求められて「今さらジャバ!?」と半分やさぐれつつ、右も左もわからない中、Java EEで開発をしてきたのですが…その頃はまさかJJUG CCCのような舞台やOracleさんで発表する機会を頂けるなんて正直思

    #JJUG_CCC Spring 2014で「初めての Java EE 開発から学んだこと」というタイトルで発表させて頂きました! - Challenge Engineer Life !
  • JPQLを利用する際に行っていること - Challenge Engineer Life !

    今回の開発では初めてJava EE6を触り、初めてORマッパーを触るので、DBまわりや性能は結構気になる所です(^^; ちょくちょく「ORマッパー使うなんて危ないねぇ」なんて周囲にも言われたりもしますが、JPAやEclipseLinkをキーワードに海外での情報も多く、Java EE6としてもJPAを利用することが標準(ですよね!?)だと思っているので、とりあえずは開発段階で色々と気を付けながら使ってみています。 JPQLはメインで動的クエリを採用(Criteriaを利用したかったのですが…断念)し、非常に簡単なものはNamed Queryを利用してます。 で、タイトルにある「JPQLを利用する際に行っていること」ですが、あまり大それたことではありません。ただ、NetBeans7.3になってから組み込まれたツールのおかげで、作業が劇的に軽減されたので、手順をまとめておこうかなと。 Java

    JPQLを利用する際に行っていること - Challenge Engineer Life !
  • とあるJava EE 6開発を終えて - Challenge Engineer Life !

    はやいもので6月も終わりですね。 5月末時点で開発は終えていて、以降、試験チームによるテストが続けられています。 自動テストやCIの効果があったのか、直接の結びつきはわからないですが、Java EE担当範囲でバグは数件に収まる感じです(連携系は除いて)。 テスト部隊のテストが甘くて少ない、というよりは、やはり色々と自動化したことで無駄な時間が省かれて、実装メンバでのテスト時間を増やすことができたんじゃないかなぁと。なので、そのくらいに抑える自信もあったり(`・ω・´)キリッ とはいえ、当の始まりは運用が始まってからなので、これからが勝負なのですが。 それでも一旦、開発という大きなフェーズを終えて一安心しているところです(^^;ほっ お上の鶴の一声で始まったJava EE開発ですが、終わってみれば自分にとって良い経験になりました。 今まで保守改造案件ばかりで、新しいことを学ぶ機会や自分がそ

    とあるJava EE 6開発を終えて - Challenge Engineer Life !
  • JPAで複合主キー・外部キー関連で諦めてしまったパターン - Challenge Engineer Life !

    以下のようなテーブル(とあるテーブルを抜粋してシンプルにしたもの)をJPAでEntityをNetBeansから自動生成して、デプロイしようとしたらエラーとなりました。 Caused by: Exception [EclipseLink-7220] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.ValidationException Exception Description: The @JoinColumns on the annotated element [field hogeEntity] from the entity class [class jp.co.hoge.entity.Foo] is incomplete. When the sour

    JPAで複合主キー・外部キー関連で諦めてしまったパターン - Challenge Engineer Life !
  • JSFで改行 - Challenge Engineer Life !

    こんな基礎的なことでも何がベストな方法か迷う自分が悲しくなる今日この頃…。 そしてJSTL(JSP Standard Tag Library)の関数なるものがJSFでも使えることを初めて知りました orz まだまだ知らないことだらけだなぁ…。 Twitterでコメントもらったりしたので、追記しました。 以下6つで実際に試しました。 CSSのwhite-spaceプロパティ JSTLの関数(replace)で処理 pre要素 カスタムコンバータで処理 Util系CDIで処理 メソッド呼出し とりあえずメモのため、良い例ではないですが以下のようなバッキングビーンを準備。 @Named @RequestScoped public class IndexBean { @Getter @Setter private String inputVal; @PostConstruct public voi

  • ResourceBundleでクラスパス上にない外部ファイルを指定する - Challenge Engineer Life !

    最近Java EEを離れ気味でJava SEのコードを書いているのですが、その中で多言語対応が必要となりました。 前に「Java技術最前線」で読んだ気が…と思って再度確認したら、ResourceBundleの記事ありました。他もいくつか調べつつ、やはりこれを使うのが良さそうだなぁと。 Java SE7 JavaDoc ResourceBundle Java技術最前線 第53回 ResourceBundleの新機能 その1 Java技術最前線 第54回 ResourceBundleの新機能 その2 Java技術最前線 第55回 ResourceBundleの新機能 その3 ひしだまさんのサイト リソース・プロパティー・環境変数 コードから情報を追い出せ!プロパティファイルの常識 (3/3) リソースファイルの国際化対応 - java.util.ResourceBundle Syboos.jp

    ResourceBundleでクラスパス上にない外部ファイルを指定する - Challenge Engineer Life !
  • PrimeFaces 5.0の新コンポーネントや新機能! - Challenge Engineer Life !

    PrimeFacesの次期バージョンとなる5.0のSNAPSHOTがShowcase Labsで動いています。 確認してみたら面白そうなコンポーネントや便利な機能が増えてたので、少しまとめてみます。 新コンポーネント DataScroller TwitterやFacebookみたいな無限スクロールを実現するコンポーネントです。 以下のような一覧があって 画面下にスクロールして末端に達すると、新たにデータの読み込みが始まって あとは繰り返し この機能、実はPrimeFaces ExtensionにWaypointコンポーネントで既に実現されています。 PrimeFacesのコミュニティでも「機能がかぶるよ!」ってコメントしてる人がいたりもしたのですが(^^; Waypointコンポーネント http://fractalsoft.net/primeext-showcase-mojarra/vi

    PrimeFaces 5.0の新コンポーネントや新機能! - Challenge Engineer Life !
  • JSF2.0なのでPrimeFacesを使ってファイルアップロード - Challenge Engineer Life !

    今回の開発にファイルアップロードはないかな、と思っていたのですが、ありました(^^; Java EE7でJSF2.2になれば標準機能でできるようになるとのことですが…↓ @den2snさんの記事 リリース間近!Java EE 7の気になるところ 現時点(2013/5/20)で自分はJava EE6でJSF2.0にて開発してるので標準が使えません(>_<) 幸いPrimeFacesを使っているので、FileUploadコンポが利用できそうです。 既に@kisさんが色々触られています↓ ファイル処理するコードがJSFであっというまにファイルアップロード対応になって驚いた件 PrimeFacesのファイルアップロードでパラメータが文字化けする件 で、さっそく自分も組み込もうと思ったら、意外としょうもない所でつまづいてしまったので、メモ。 まずは簡単なサンプルを、と思ってPrimeFaces3.5

    JSF2.0なのでPrimeFacesを使ってファイルアップロード - Challenge Engineer Life !
  • JSFで自動生成されるidの区切り文字(コロン)を変える設定 - Challenge Engineer Life !

    今日(もう昨日?)のJJUG CCCで@den2snさんの発表聞いていた中で、jQueryとJSFの相性が悪い理由の1つにJSFが生成するidに「:」コロンが入る、というのがありました。 前に何かで、この区切り文字を変える話を読んだなー…と思ってググったら、当時読んだのとは違いましたが、ありました。 Is it possible to change the element id separator in JSF? 一応簡単な例で確認してみました。 xhtmlで <h:body> <h:form id="frm"> <h:commandButton id="btn" value="送信"/> </h:form> </h:body> と定義します。実行結果は単純に以下のようになります。 HTMLのソースみると「id="frm:btn"」とあります。 フォーム「frm」の中にあるボタン「btn」

    JSFで自動生成されるidの区切り文字(コロン)を変える設定 - Challenge Engineer Life !
    tarchan
    tarchan 2013/12/05
  • JSF管理対象Beanのスコープを基礎からおさらいしてみる - Challenge Engineer Life !

    入社式も終えて数か月後には新人さんが入ってきたりする可能性もあるのですが、新人さんの素朴な質問にハッとすることがちょくちょくあります(^^; 質問に上手く答えられず、あー、意外と自分もちゃんと理解してないなぁ、とか…。 先日、新人さんではないですが後輩(Java EE6開発担当ではない子)から 「今やってるJava EE6開発でのセッション管理っていうか、画面情報の記憶とかってどんな仕組みで管理してるですか?」 と聞かれ、どう答えようか迷いました。 その子はもともとASP.NETのWebForm開発とかをメインにしていたので、主にSession.Contents("key") = value;みたいなのをイメージしていたりして。 「アノテーションっていうC#の属性(Attribtue)みたいなのがあって、それで宣言したスコープによってJava EE側が上手いことやってくれてるんだよね…」

    JSF管理対象Beanのスコープを基礎からおさらいしてみる - Challenge Engineer Life !
  • NetBeansでGlassFishのリモートデバッグ - Challenge Engineer Life !

    この記事は「GlassFish Advent Calendar 2013」の2日目の記事となります。 昨日はGlassFish Users Group Japanの運営をされていますHASUNUMA Kenjiさん(@btnrouge)による「GlassFish Community便り」でした。 明日は再度HASUNUMA Kenjiさん(@btnrouge)です! デプロイした環境で動かない…だと 先日、手元の開発環境(NetBeans+GlassFish)で上手く動くのに、デプロイしたサーバ環境(GlassFish)で上手く動かない、という事象がお隣のチームであったようです。 ログを解析すれば何らか情報が得られるでしょうが、なんと信じがたいことにアプリケーションによるログ埋め込みしてないとか何とか聞こえ………いや、聞こえないっ、僕には何も聞こえないっ(((゚Д゚)))ガタガタ 横で

    NetBeansでGlassFishのリモートデバッグ - Challenge Engineer Life !
  • PrimeFacesのCalendarでローカライズ - Challenge Engineer Life !

    PrimeFacesのShowcaseに置いてあるCalendarコンポにLocalizationのサンプルがあります↓ http://www.primefaces.org/showcase/ui/calendarLocalization.jsf locale属性を指定すれば動くのか!と安易に真似したのですが動きません。あれ?と。 ドキュメント(3.4のp.48)を読むと you need to add the necessary translations to your page manually as PrimeFaces does not include language translations. 自分で追加しないとダメとあります。なるほど。で、参考ページのリンクがドキュメント内にあるのですが、飛べない…orz その後、ググったのですが、多分ここじゃないかな、と。 http://c

    PrimeFacesのCalendarでローカライズ - Challenge Engineer Life !
  • PrimeFacesで必須入力バリデーションを回避する方法 - Challenge Engineer Life !

    プロトタイプの開発とはいえ、実際に実装してみると細かい所でつまづきます。 今日はバリデーションとその評価に関するつまづきです。画面コンポはPrimeFacesを使っています。 ある画面のいくつかの項目は必須入力で、required="true"としていますが、ログオフのCommandLinkや保存せずに前画面に戻るキャンセルボタンのCommandButtonなどを押下して「必須入力項目が入力されていません!」と怒られるのはアウトです。 必須入力を回避するには…と検索していたところ http://stackoverflow.com/questions/11243652/how-to-invoke-a-command-button-without-validating-all-required-inputs とありました。 PrimeFacesのcommandButtonやcommandLin

    PrimeFacesで必須入力バリデーションを回避する方法 - Challenge Engineer Life !