今さら感が強いですが、去年の5月にSIerを辞めました。 その前の会社とあわせて6年ほど(途中6ヶ月ほど育休期間があります)受託開発がメインのエンジニアをやってきましたが、いろいろ思うところがあって受託開発ではないところに転職しました。 その理由…
動機 今年度に入ったあたりからJerseyを仕事でも使いだしたのですが、プライベートでも試すだけじゃなくてなにか作ってみようと思うようになりました。で、公開して何かしらの反応が欲しいなと。それはプラスの反応だけでなくマイナスの反応でも、成長の糧と…
今、EclipseLinkでJPQL使って開発してます。 SQLのログを出しているとJPQLに埋め込んだ定数もパラメータ化されているのがちょっと気持ち悪いなと思ってたんですが、動作には問題なかったので、特に気にしてませんでした。 エラーとなる場合もある ところが、…
8月にこの記事で知ったJUnit4.12ですが、先日betaが取れて正式にリリースされたようなので、おいしいとうわさのcontext-nestを試してみました。JUnit 4.12の新機能紹介まとめ - うさぎ組まず、pom.xmlのjunitのバージョンを4.12に上げます <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope></scope></dependency>…
Glassfish4.0.1 build4でいろいろ試していましたが、build5が知らないうちにリリースされてました。 http://dlc.sun.com.edgesuite.net/glassfish/4.0.1/promoted/ (2014/5/5) よく使ってるものでいえばjerseyが2.5.1から2.8にバージョンアップしてました。 …
freemarkerという結構いろんなことが出来るJavaのテンプレートエンジンがあります。 http://freemarker.org/ 今悪い意味で話題のstruts2でも使われているライブラリです。 ※ freemarker自体が悪いわけではないですまた、今JavaのWAFでちょっと話題のJAX-RSと…
はじめに Mavenのライブラリは基本的にはCentral Repositoryに登録されていますが、手続きも面倒そうだったりするのでもっと手軽に公開サーバに登録したいということでやってみました。このあたりを参考にしました。 http://blog.lampetty.net/blog_ja/index…
動機 このあたり便利そうなので試してみました https://jersey.java.net/documentation/2.5.1/mvc.html#d0e12836最終的にはバリデーションエラーの際に戻った画面上で入力フィールドに値を残しておきつつ、エラーのあったフィールドにエラーメッセージを出し…
最初に まず、jersey-mvc-freemarkerを使うために次のようにpom.xmlを書きます。 jersey-mvcは既にGlassfishに含まれているためprovidedにします。 jersey-mvcはservlet-api2.4に依存しているんですが関係あるのはjspを使うときのようなので https://jersey.…
これ、リソースクラス側でセッションに格納したログイン情報をfilterで見て制御するというのをやろうと試してあきらめてたんですが、単なるバグだったっぽいです。 https://java.net/jira/browse/JERSEY-19604.0.1 build4では直ってます。 こういう致命的な…
前のメモが中途半端な感じで終わってしまったので、もうちょっと試してみました。Glassfish4.0.1 buid4つかってラムダ式を書いて実行すると 起動時にこういうエラーが出たけど、なんか動いているっぽい。という話。 重大: Exception while visiting WEB-INF/…
先日Java SE8がついにリリースされました。早速ラムダ式試してみました。 慣れるまでは大変そうですが、記述が簡単になるのがいいですね。さて、今回は昨年リリースされたGlassfish4でJava8のラムダ式が使えるかどうかを試してみました。 準備 まず、Java SE…
ものすごくシンプルな例としてList strsという変数があるとして、そのインデックスと文字列を表示したいという場合、 普通にfor文で for (int i = 0; i < strs.size(); i++) { System.out.println(i + ":" + strs.get(i)); } ってやるのが普通なんですが、一…
無知は怖いという話です。今まではORMフレームワーク使って1件ずつinsertしたり、ちょっと早くしたい場合はINSERT文を構築して100件ずつとかまとめてinsertしたりしてました。今回、ちょっと調べてみるとPostgreSQLではCOPYコマンドというのがあって、jdbcラ…
コードは次のとおり import文等は省略してます。 TestBean.java @ApplicationScoped @Getter // lombok public class TestBean implements Serializable { private Integer count = 0; public void increment() { count++; } } TestResource.java @Path("tes…
JAX-RS実装であるJerseyですが、通常の画面をMVCで構築するための拡張が用意されています。 https://jersey.java.net/documentation/latest/mvc.html基本的な使い方は上のリンク先を見てもらうなりぐぐってもらうなりして、今回Responseヘッダにcharsetを指…
静的ファイルへのアクセス 通常jsやcssのファイルはWebContentやsrc/main/webapp(Maven Projectの場合)の中に置いて直接参照させます。 例えば、WebContent/css/main.cssはhttp://address/コンテキスト名/css/main.cssでアクセスできます。 もうひとつの方法…
設定は3つのレイヤで可能 上位からEnvironment,Template,Configurationです。それぞれ、Configurableクラスを継承しています。 http://freemarker.sourceforge.net/docs/pgui_config_settings.html より上位のレイヤの設定内容が有効となります。例えばEnvir…
オリジナルの問題 http://pavlocat.hatenadiary.jp/entry/2013/08/25/181515今回は商品10個、商品を渡す順番とお金の渡し方を考えます。@ozy4dmさんによるコード https://bitbucket.org/ozy4dm/otsuri_master 私の解答です(Java)。 https://gist.github.co…
Freemarkerでは通常getterを見るようになっていてpublicフィールドは参照しません。 ちなみにこれは ${hoge.hoge1} みたいな場合で のようにすればpublicフィールドも参照可能です。(これはfreemarkerではなくstruts2のValueStackを使っているため) なので、…
2013/10/17 DevLove関西の勉強会 http://devlove-kansai.doorkeeper.jp/events/5586 忘れないうちにメモ そもそも そういえばテストを体系的に学んだことないよな 「とりあえずユニットテストやって(Web開発なので)画面チェックすればいいや」、っていう軽…
参考 通常のorder by 指定 例えばここで使ったようなテーブルがあるとして、 postgresqlだと create table employee ( id SERIAL NOT NULL, name TEXT NOT NULL ); id順に取得したい場合はSQLは SELECT * FROM employee ORDER BY id; のようになります。 で…
問題 オリジナルはこれ http://antimon2.hatenablog.jp/entry/2013/08/07/231634実際の問題のページは見れなくなってるようです。僕の解答はここ https://gist.github.com/kamegu/6929169 解き方 解説を見てもやっぱり基本は総当りのようです。 ただし、それ…
f:viewParamとf:viewActionを使う。これらをf:metadataタグで囲む。 f:viewActionはJSF2.2で追加されたっぽい。それまではf:event type="preRenderView"を使っていた。 http://jdevelopment.nl/jsf-22/#758 http://www.oracle.com/technetwork/articles/java…
昨日9/20に神戸で行われたイベントに参加してきました。 こういうイベントは初参加。 http://event.shoeisha.jp/devsumi/20130920/ 出席したのは 「開発 / デザインのプロなら知っておくべき 互いの能力を最大に生かす方法」 江川 崇/矢野 りん 「チケット駆…
最近、 http://hoshi.air-nifty.com/diary/2012/06/java-ee6java-ee.html みたいな記事を読んだりしてJavaEEに興味が出てきて Java EE 7 & GlassFish について語ろうにも参加したりしました。 で、JavaEEではフロントエンドの画面作成(MVC)はJSFのようです…
結論から言うと、セレクタを使ってHTML要素を取得するくらいしかjQueryは使えなさそう。 addClassとかつかってスタイルを変えれれば便利なんだけど、できなかった。例えば次のような直線をひくとする。 <svg id="svg1"> <line x1="100" y1="100" x2="200" y2="300" stroke="#000" class="cls1"/> </svg> SVG要素作成 jQueryを使って次のように書きたいけど…
jQuery UIのsortableを使ってtable要素を並び替えるの続きです。 例えば上のリンクのデモ画面を見ると、並び替えをしようとして行をドラッグすると移動中の行の幅が小さくなってしまっています。 例えば、このデモ画面を見ると、ドラッグ中にdivとかliの場合…
sortableの基本的な使い方はこちらを参照。 jQuery UIのsortableを使ってドラッグアンドドロップで並び替え 間違った例 一番シンプルに書こうとするとこうなるかと思います。 HTML <table id="sortable-table"> <tr> <th>番号</th><th>項目</th><th>備考</th> </tr> <tr> <td>1</td><td>項目1</td><td></td> </tr> <tr> <td>2</td><td>項目2</td><td></td> </tr> <tr> <td>3</td><td>項目3</td><td>なし</td> <…</tr></table>
struts2でJSONを結果として出力したいとなったときのために、JSON Pluginがあります。これとconvention pluginのアノテーションを使って実際に試してみました。もちろんJSONとなる文字列を作って、InputStreamオブジェクトに設定してStream Resultとして返し…