2015-01-01から1年間の記事一覧

datepicker 翌月が 1900年になってしまう!

jQuery UI Datepicker で、動的に再作成した時に、結構ハマりました。 next アイコンリンクをクリックしたら1900年になってしまうのです。 stack overflow に書いてあって助かりました。。 http://stackoverflow.com/questions/4987293/weird-jquery-dat…

csv4j をラムダ式で。。。

CSVを読み込んで処理する csv4j の利用をラムダ式で書きたくなってきた。 ラムダ式の対象にしたいのは、CSVLineProcessor を使う CSVStreamProcessor である。 ラムダ式にしないこれまでの使用サンプル try{ CSVStreamProcessor csvStreamProcessor = new…

プログレス書き直す

2年前に書いた spin.jsを使ったプログレス状態のWebページを表現する JavaScript http://blog.zaq.ne.jp/oboe2uran/article/970/ =プログレス表示中に半透明なシートを覆い被せてクリックできないようにガードするものを書いたけど、 CSSスタイルシ…

Wicket Panel の中に配置した入力フィールド

Wicket の Panel を Form の中に配置してPanel内の入力フィールドを、 getRequestCycle() で入力値を受け取るときのキーは、 "PanelのWicket-ID" + ":" + "inputのWicket-ID" というキーになる。":" 区切りである。 Webmarkupコンテナの中に配置した場合は、…

Optional の orElseThrow を使う

Wicket を Java8 で書くようになったせいなのか、Wicket のバリデータを書くのが嫌にになってきた。 たしかにバリデータを書いてセットして、Form の onError が call される方式は、 入力項目が少ない場合に手軽で良いと思う。でも項目が多くて Form のonSu…

chromeで0以上の整数入力に限定する

以前、chrome で、何がなんでも全角入力させない を書いたが、 半角で0以上の整数入力に限定する場合が欲しくなった。 「.」のキーイベントコード:190 「+」のキーイベントコード:187 + ShiftKey 「-」のキーイベントコード:189 を keydown で捕捉するこ…

ListView スクロールで追加

Wicket の基本かも知れないが、、、 ListView で、リストが追加された時に、すべてのリスト要素に対する populateItem が実行されないように、 追加分だけ実行させるには、 setReuseItems(true)を、ListView で実行する。 確認の為のコード、サンプル。 スク…

Wicket の IRequestParameters と Java8

Wicket でプログラムを書いていて、form送信結果を取得するのに、 getRequestCycle から、org.apache.wicket.request.IRequestParameters を取得して 抽出することはあまりやらないのだけど、 IRequestParameters#getParameterNames() で、受け取るパラメー…

iPhoneライクのトグルスイッチ

jQuery UI で、iPhoneライクのトグルスイッチ、 手軽なのを見つけた。 https://github.com/tdreyno/iphone-style-checkboxes 以下、キャプチャです。

Maven 3.2.x でなくて、3.3.x を使うべき。

Maven 3.2.3 環境で、Eclipse Maven ビルド実行していたら、、 コンパイルエラー ラムダ式は-source 1.5でサポートされていません (ラムダ式を使用可能にするには、-source 8以上を使用してください) が発生してしまった。なぜ? Maven 3.3.9 zipをダウンロ…

2つのテーブルでの行のドラッグ&ドロップ

2つのテーブル間で行をドラッグ&ドロップさせるサンプルを jQuery UI で書いてみました。 移動後に、 ということです。HTMLとCSS <div id="wrap-content"> <div id="left-band"> <table> <thead> <tr><th>No.</th><th>Name</th></tr> </thead> <tbody> <tr><td>1</td><td>AAA</td></tr> <tr><td>2</td><td>BBB</td></tr> <tr><td>3</td><td>CCC</td></tr> === 省略 === </tbody>…</table></div></div>

Wicket で table のスクロールイベントを処理する

table の tbody タグに、CSS でスクロールするようにした HTMLで、スクロールの終端に達した時のイベントを 処理をサーバ側で、何等かの処理をしたくて Wicket で書き始めた。 CSSで書く tbody タグスクロールを書く方法は、過去に書いた方法を 参照→「table…

IChoiceRenderer ラムダ化

Wicket7 の IChoiceRenderer で 選択したものを特定するのに getObject で 先日書いた実装するくらいなら、getObject は、default メソッドにして、 プルダウンとして表示する <option>タグbody を決定する IChoiceRenderer#getDisplayValue の方をラムダ式にしたく</option>…

Wicket7 の IChoiceRenderer

Wicket7 では、IChoiceRenderer の実装しなくてはならないメソッドが増えている! public T getObject(String id, IModel> choices) DropDownChoice で IChoiceRenderer を使う場合、getModelObject() で取ってくるものをこのメソッドを実装して返さなくては…

jQuery UI の sortable の toArray は、id だから。

jQuery UI の sortable は、demo だけを見てると、ではソートした結果をどう受け取ってきて使うのかは、よく読まないと見えてこない。 updateイベントで、toArrayメソッドを使って並び変わった結果を取得する。updateイベントは、ドラッグの操作変更された時…

java.util.Date使うのをやめたら、

java.util.Date をやめたら、代わりによく使いそうなパターンのメモ // 現在日 LocalDate localdate = LocalDate.now(); // 現在日+1日 localdate.plusDays(1); // int 年、月、日 → LocalDate localdate = LocalDate.of(2015, 9, 12); // "yyyy-MM-dd" → …

ダブルクリックで、プルダウン<=>テキスト入力

chrome ブラウザ限定ですが、ダブルクリックでプルダウンとテキスト入力させるフィールドを jQuery で書いてみました。 このようなプルダウンで選択した状態で、、 ここで、ダブルクリックすると、、、 テキスト入力状態にさせます。→コピーペーストができる…

2段組みのレイアウトのサンプル

以前書いた2段組みのレイアウトのサンプルは、よくよく見たら、ウィンドウリサイズでスクロールが出てしまうので、書き直した。 <style type="text/css"> html, body{ margin: 0; padding: 0; height: 100%; background-color: #fcfcf0; /* コンテンツと同じ背景色にする */ } div#…

利用期間重複の詳細リストを求める(4)

過去に書いた以下、いずれも気に入らなくなってきた。 利用期間重複の詳細リストを求める(1) 利用期間重複の詳細リストを求める(2) 利用期間重複の詳細リストを求める(2)-2 利用期間重複の詳細リストを求める(3) ) とにかく、まずは重複しているだけのリスト…

Java8 StreamでWicket ListViewセル結合

昨日書いた groupingBy の利用として、HTML-tableタグ rowspan結合をサンプルとして作ってみました。 keyでグルーピング可能な任意オブジェクトリストを受け取って最終目的は以下のような表を作ることです。 Wicket の ListView でこの表を作ります。 対象の…

Wicket7と Java 8

Wicket 7 になって驚いたのは、 Wicket 6 まで、コンポーネントをHTMLのタグの階層に合わせて、add していたのだが、 wicket:id 属性をユニークにしていれば、 queue( component ) ; で、add の代わりになることだ。これはコードを書くスピードが速くな…

IntSream → List<Integer>

Memo List<Integer> list = IntStream.range(1, 13).boxed().collect(Collectors.toList()); list.stream().forEach(System.out::println); results 1 2 3 4 5 6 7 8 9 10 11 12 ================ UnaryOperator<String> stringUpperCase = (s)->s.toUpperCase(); System.out.</string></integer>…

任意の日付→月末日

任意の日付から、月末日を求めるのに、Java7では、わざわざ Calendar を介してしていたので、 コードを綺麗にする為にメソッドにしていた。。 public static Date getEndDate(Date date){ final Calendar cal = Calendar.getInstance(); cal.setTime(date);…

利用期間重複の詳細リストを求める(3)

java.util.Date を使ってることに抵抗を感じながら、とりあえず 利用期間重複の詳細リストを求める(1) 利用期間重複の詳細リストを求める(2) これらの最終目的である重複の状況を求めるもの。サンプルを作ってみた。。 List<Element> list = createElementList(); // </element>…

mybatis JSR310 の LocalDate など

Java7→Java8 移行で、mybatis を使うプロジェクトで注意しなければならないのは、 java.util.Date の代わりに java.time.LocalDate / LocalDateTime に置き換わった時です。 mybatis でタイプハンドラを指定やらないとなりません。MITライセンスで、このハ…

利用期間重複の詳細リストを求める(2)-2

先日書いた 利用期間重複の詳細リストを求める(2) は、よくよく考えたら、、、 List<Element> results = list.stream().collect( ArrayList::new, (List<Element> rlist, Element t)->{ for(Element e: list.stream().filter*1; この for 文は、以下のように書ける。 ====</element></element>…

期間 DateのStreamを生成

期間を示す日付を指定して、java.util.Date 、もしくは、java.time.LocalDate の Stream が欲しくなったので、メソッドを用意 Java8 でjava.util.Dateを使うのも抵抗あるけど。。。 2015-10-01 と 2015-10-03 なら、10月1日~3日の3個が取得できるものとす…

mybatis configuration.xml のDOCTYPE宣言

mybatis が、iBatis時代から使っていたせいか、configuration.xml の DOCTYPE宣言を iBatis 時代のまま、 コピペで使い回してしまった。。。 typehandler など宣言するとき、Eclipse で編集時にエラーになって気がついた。 現在は、以下である。 http://myb…

利用期間重複の詳細リストを求める(2)

先日書いた 利用期間重複の詳細リストを求める(1) から、ちょっと目的が外れるけど、 重複した素材の抽出のみ絞ったリストを生成するのを Java8 Stream で考えてみた。 素材のオブジェクト public class Element { public int id; public Date start_date; p…

利用期間重複の詳細リストを求める(1)

スケジュール管理などで、期間の重複を避けるための処理は良く書くことがあります。 要件として、既に重複が存在する状態の重複した期間の詳細を別に求めるという機会は、 少ないと思います。 それでも、重複した日の重複したもののリストを一覧で、日付毎に…