Java EE 事始め!

主にJava EEについて、つらつらとマイペースに書いていきます。「Java EEを勉強するときに、一番最初に読んでもらえるブログ」を目指して頑張ります!

Java EE 7

【回避方法あり】Payara 4.1.1.164には認証に関するバグがありました

環境 Payara Web ML 4.1.1.164 確認していませんが、Full Profileでも同じバグがある可能性があります。 また、4.1.1.163以前のバージョンには、このバグはありません。 現象 JDBCリソースやレルムの設定を正しく行っても、アプリケーションでフォーム認証が…

Java EE 7を勉強する方法(2016年ver.)

今年になって、Java EEの学習環境がガラッと変わりました。 2016年も半分以上過ぎてしましましたが(笑)、今からJava EE 7を勉強するにはどうすべきか、改めて書きたいと思います。 1. まずは作りながら学ぶ 以下3冊のいずれか1つで、Webアプリを作りながらJa…

EclipseLinkとHibernateではTemporalType.DATEなフィールドの型が違う

かなり久々のJPAネタ。 こんなエンティティクラスがあって、 @Entity public class Employee implements Serializable { @Id @Column(name = "emp_id") private Integer empId; @Temporal(TemporalType.DATE) @Column(name = "joined_date") private java.ut…

Payara Microの実行可能JAR(Uber JAR)がとても簡単な件

先日、Payara 4.1.1.162がリリースされました! その組み込みサーバー版であるPayara Micro 4.1.1.162には、「Uber JAR」というSpring BootやWildFly Swarmのような単体で実行可能なJARを作る機能が追加されました。 Payara 4.1.1.162 がリリースされました …

Jersey MVCでThymeleafを使おう!

この記事について JJUG CCC 2016 Spring「ネクストStruts/Seasr2としてのJava EEアクションベースMVC入門」の補足記事です。 Jersey MVCで、JSPの代わりのビューとしてThymeleafを使う方法を解説します。 Jersey MVCの基本については、下記の記事を参照して…

Jersey MVCでレルム認証する(Jerseyも基本的には方法は同じ!)

Jersey MVCでレルム認証する(Jerseyも基本的には方法は同じ!) Java EEの認証・認可機能といえばレルムですね。 今回は、Jersey MVCでレルムを使ってみました。MVCじゃないJerseyでも方法は基本的に同じです。 ソースコードはGitHubにアップしています。 htt…

【注意事項あり】Doma 2だけどCDI/EJB使ってJTAでトランザクション管理したい!そしてJAX-RSでREST作りたい!

Doma 2とは?基本的な使い方は? Doma 2は、SQLを外部ファイルに書くことができるORマッパーです。ネイティブSQLが書けること、依存ライブラリが無い事、国産 OSSで日本語ドキュメントが充実している事などが魅力です。 下記の記事もご参考になさってくださ…

CDI/JTAを使うなら読んでおきたいリンクまとめ

日本語書籍 「わかりやすいJava EE」「Java EE 7徹底入門」です。 金魚本およびEE 5本には記載がありません。 Amazon CAPTCHA Amazon CAPTCHA まず概要を掴む CDIに関しては、まずは下記の上妻さんの記事をご確認ください。バージョンが上がるごとに注意点を…

JSFを使うなら読んでおきたいリンクまとめ

この記事について タイトルの通りですが、JSFを使う上で確認しておきたい情報のリンクをまとめました。 まずはコレ! 菊田さんのJava Day Tokyo 2015の発表資料です。 JSFの全体像や、JSFで何ができるかなどが綺麗にまとまっています。 PDF(直リンク) http…

jBatch(Java EE 7)をNetBeans+GlassFish+Mavenではじめました

jBatchとは? Java EE 7から新たに加わった、バッチ処理用フレームワークの仕様です。 EE 6までは、Java EE標準仕様にバッチは入っていなかったのですが、EE 7から加わりました。 正式名称は「Batch Application for the Java Platform」で、公式?の略称が…

IntelliJ IDEAでJAX-RSが捗る!

小ネタです。 IntelliJ IDEA 14.1.1 Ultimate Editionを前提としています。最近は、意識してIntelliJ IDEA+GradleでJava EEやってます。 いつもはNetBeans+Mavenを使うことが多くて、これが一番手軽なんですが、IDEAは補完がとにかく強力で、「ここも補完…

Java EE 7のトランザクション管理(JTA)概要

以前、MVC 1.0の記事で、Java EEのトランザクション管理について書きました。 MVC 1.0ではじめる簡単Java EE開発入門! - Java EE 事始め! @RequestScoped public class ManufacturerService { @PersistenceContext(unitName = "ozarkPU") private EntityMa…

続・JPQLでハマった話

このブログについて この記事は、Java EE Advent Calendar 2014 - Qiitaの21日目です。 昨日は@kokuzawaさんのRESTEasyとSpringの連携 - Katsumi Kokuzawa's Blogでした。 明日は@den2snさんです。 経緯および前回の記事 まずは、こちらをご覧ください。 JPQ…

JPQLでハマった話

やりたいこと(要件) DBの社員表(emp)から、社員名(ename)のイニシャルでグループ化して人数をカウントする。 イニシャルと人数の両方を結果に含める。★2014/12/21追記 追加調査しました。 続・JPQLでハマった話 - Java EE 事始め! SQLでやってみた DB…

GlassFish 4.1でのJNDIコネクションプーリングの設定方法

GlassFish 4.0でも手順は同じですが、4.1では管理コンソール画面が英語しかありません。 今回のDBはPostgreSQLですが、どのDBでも基本的に同じのはずです。Cドライブ直下にGlassfish 4.1がインストールされているものとします。 JDBCドライバの配置 まず、C:…