CLOVER🍀

That was when it all began.

2015-04-01から1ヶ月間の記事一覧

Embedded Tomcat 8でArquillianを使う

Java EEで遊ぶ時、WildFlyにデプロイ、もしくはArquillianを一緒に使うか、自分でEmbedded Tomcatのインスタンスを作ってそこで動かすことが多いのですが、そういえばArquillianにもTomcatのサポートがあったなと思い、こちらも使ってみることにしました。Ar…

IntelliJでArquillianのテストをScalaTestと合わせて使う時

ちょっとハマったので、書き残し。sbt(Scala)+ScalaTestとArquillianを一緒に使っていて、なおかつIntelliJでテストを実行する時にはScalaTestとしてではなく、JUnitとして起動すること。テストがキレイに無視されます。どうも、@RunWithアノテーションを…

CDIのDependentアノテーションがよくわからないので、Weld SEでちょっと確認してみました

CDI

CDIをちょっとずつ見ているのですが、個人的にどうしても引っかかるのが@Dependentというスコープ。少し調べてみると見かけるのは、 擬似スコープと呼ばれる インジェクション先のライフサイクルに準ずる といった説明なのですが、個人的にはちょっと得体の…

Lambda式をシリアライズする

少し前にLambda式のシリアライズってどうなの?という話があって、Lambda式が表現するクラスまたはインターフェースがSerializableでなければシリアライズはできないという話ではあったのですが、ちょっと気になって調べてみました。すでにシリアライズして…

Javaのシリアライザーをいろいろ試してみる(Java標準、Kryo、MessagePack、Protocol Buffers、JBoss Marshalling)

少しシリアライズ関係のライブラリを目にする機会がありまして、そういえばこういうまとめ記事あったなぁということを思い出しました。MessagePack、Kryo、Protocol Buffersなどのシリアライザーのパフォーマンス比較 http://blog.katty.in/4567気にはなって…

Runtime#addShutdownHook、sun.misc.SignalHandlerを使ってシグナルを扱う

これまでちゃんと使ったことがなかったRuntime#addShudownHookと、個人的にメモとして書き残しておきたいsun.misc.SignalHandlerについて、ちょっと書いておきます。それぞれどんなものなのかですが、Runtime#addShutdownHookはJavaアプリケーションの終了時…

InfinispanのCustom Interceptorを実装する

最近ちょっと気になった、Infinispanのこの機能。20. Custom Interceptors http://infinispan.org/docs/7.1.x/user_guide/user_guide.html#_custom_interceptors_chapter全然試したことがなかったので、これを機にと。 Custom Interceptorとは? ドキュメン…

wildfly-arquillian-container-embeddedってwildfly-arquillian-container-managedと何か違うんですか?

最近、組み込みTomcatにJAX-RSとCDIを載せて動かしていることが多いのですが、ちょっとしたテストの時に便利だなぁという感じで使っています。ただ、Java EE系のテストといえばArquillianだということで、ふと見た時に気になったのがこの人。WildFly 8.1.0 -…

Groovyで使うHTTPクライアントを、HTTPBuilderからJAX-RS Clientに移った話

最近、簡単にスクリプト的なHTTPクライアントを書く機会があって、Groovyで書こうとしたのですが…普段はHTTPBuilderを使っているのですが、ちょっと変えることにしました。HTTPBuilder https://github.com/jgritman/httpbuilderDocument https://github.com/…

CDIのAlternativesを試す

CDI

あまり理解しないまま使っているCDIですが、最近ちょっと気になり出すところがありまして、少しずつ見ていこうかなぁという気になりました。こういうの、自分で試してみないと覚えないので、すでに出ている内容でも気になったテーマは自分で書いていこうかな…

BMUnitを使って、BytemanとJUnitを合わせて使う

ちょっとしたトラブルシュート、デバッグに使っているものに、Bytemanというツールがあります。Byteman http://byteman.jboss.org/Bytemanは、Javaのバイトコードを書き換えてコードを注入したりすることができます。個人的にも、エントリを書いたことが。バ…

InfinispanのLucene Directory実装を使って、インデックスを分散して持つ

久々に、書いてみたくなっただけのエントリ。Infinispanが持つLucene Directory実装を使って、遊びます。Infinispanはインメモリ・データグリッドと呼ばれる製品の一種で、複数のJava VM間でクラスタを構成し、比較的簡単にデータを共有することができます。…

CDIでコンストラクタインジェクションしたい

CDI

最近、ちょっと気になっているネタです。CDIでコンストラクタインジェクションがしたい、という話でちょっといろいろ試してみました。とりあえず、動作確認はJava SE、Weld SEで行うものとします。 Maven設定 pom.xmlの設定は、こんな感じ。 pom.xml

JJUG CCC 2015 Springに行ってきました

4/11に、ベルサール新宿グランドで行われた、JJUG CCC 2015 Springに行ってきました! JJUG CCC 2015 Spring http://www.java-users.jp/?page_id=1647セッション一覧は、こちら http://www.java-users.jp/?page_id=1661自分にとって、コミュニティ主催(って…

CDI Extensionでコンテナ初期化処理のイベントを受け取る

CDI

以前Undertow+JAX-RS+CDIという組み合わせで遊んだのですが、この時JAX-RSのリソースクラスをスキャンする人が誰もおらず、自分でクラスをひとつひとつ登録する羽目になりました。この時、Hammockというライブラリを教えてもらったのですが、こちらはそう…

Reflections、Scannotation(とSpring)で、クラスパス上から特定のアノテーションが付与されたクラスを探し出す

少し前に試したエントリで、クラスをスキャンして自動登録…ができたらいいなぁみたいなところがあったのですが、以前それに近いことはエントリとして起こしたことがあります。Javaで特定のパッケージ配下のクラスを検索する http://d.hatena.ne.jp/Kazuhira/…

マルチプロジェクト構成のMavenプロジェクトで、特定のサブプロジェクトのゴールを実行する

Mavenでのマルチプロジェクト構成に慣れていないので、いざ使ってちょっと調べてみたことをメモ。例えば、以下のようなプロジェクト構成の場合に、 pom.xml (parent) sub-1/pom.xml sub-2/pom.xml sub-3/pom.xml sub-2のみのtestを実行したいという場合。…

OpenShift OnlineでSSLエラー(java.security.NoSuchAlgorithmException: EC AlgorithmParameters not available)とか出たら

HerokuからOpenShift Onlineに移行して、ちょっとハマったのがSSLのエラーでした。まさに、以下の内容でした。OpenJDK on OpenShift: “NoSuchAlgorithmException: EC AlgorithmParameters not available” http://stackoverflow.com/questions/28999410/openj…

OpenShift OnlineにWARファイルをデプロイする

最近、使っているPaaSをHerokuからOpenShift Onlineに乗り換えまして。デプロイ方法は、WARファイルを直接という形にしました。Herokuでもできましたが、OpenShift Onlineはどうだろうかと思いましたが、あまり問題なかったです。やり方は、以下のドキュメン…

UndertowでJAX-RS(RESTEasy)とCDIを使う

以前書いた、こちらのエントリ組み込みTomcatでJAX-RS(RESTEasy)とCDIを使う http://d.hatena.ne.jp/Kazuhira/20150308/1425780313の、コンテナを組み込みTomcatからUndertowに変えて遊んでみたというお話。実装する時の条件は、前と変わらず JAX-RSの実装…