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

AjaxFormComponentUpdatingBehavior を使う

Wicketで、イベントを処理するのに、よく使われるのが、 AjaxEventBehavior でも、フォームコンポーネントの要素、input 、 select タグの入力値までは取得できない。 入力値まで必要なら、 AjaxFormComponentUpdatingBehavior を使う。 DropDownChoice など…

Wicket AutoCompleteTextField テキスト入力取得

Wicket の AutoCompleteTextField を使う場合、 Bean オブジェクトで使用する時、入力テキストフィールドに入力された文字列を String として取得したい場合、getModelObject() のログを出せば確かに 見れるのだが、これを String オブジェクトには cast で…

mybatis 動的SQLの if  test 文の中、

MyBatis 動的SQL の <if> を書く場合によく使うのが、null か null でないかであろう。 <if test="billno != null"> </if> test文を不等号で書くときは、、、 < → &lt; > → &gt; 論理和の演算子は、Java と同じ ’ || ’ が書けるが、 論理積の演算子は、’&& ’ で書くことはできない! 論理積の演</if>…

改めてWicket の DropDownChoice 未選択表示

昔、書いたのに忘れてる。 「Wicket の DropDownChoice 未選択表示」 ここで書いたのは、各 Page 毎に、プロパティファイルを用意して指定する方法、 <form wicket:id="form"> <select wicket:id="selectUser"></select> </form> の場合、 form.selectUser.null = --- プルダウンで選んでください。--- あるいは、 form.selectUser.n…

nginxでRails と Tomat を共存

nginx で動かしている Rails を追い払うのが目的で、nginx で Rails を動かしたままで Tomcat を動かす。 nginx.conf を以下のように書き換える。 これは、URLのパスの先頭、つまり "/" が Rails サイトにされているところに、"/yacob" なら、Tomcat サイト…

table_cache でなくて、table_open_cache

MySQL 5.5 をチューニングしようと、table_cache サイズを変更するために、 以下を実行するとエラーになる。 mysql> SET GLOBAL table_cache=512; ERROR 1193 (HY000): Unknown system variable 'table_cache' table_cache でなくて、table_open_cache と打…

removeIf

そろそろ、Java 8 を使い始めるとしよう。 今までアホなコーディングとして、List の展開、 for(E e:list) の中で、list.remove(e); を書いてしまうと、 当然、 Exception in thread "main" java.util.ConcurrentModificationException at java.util.ArrayLi…

作成中のページでもガードをかけて公開

中途半端なWebページ作成中で、見られてもいいから公開/運用したいWebサイトがあるとします。 ある特定のページだけ、内容が見られても良いリンクやボタンなど操作できないページにする 管理が簡単にできないかと考えました。 ・共通の JavaScript を…

MySQL BLOB を mybatis で使う時に出たエラー

mybatis で MySQL の BLOB型データを読み書きしようとしたら、 Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right…

mybatis ログレベルによる出力分け

mybatis を sl4j (logback) を使用したプロジェクトで使用する時、 logback.xml に org.apache.ibatis パッケージ に対するログレベルを書かなくても、呼び出し側で DEBUG になっていると、、 org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug が DEBUG…

1プロジェクトで起動可能な2つのJARを作る

Mavenプロジェクトで Manifestに java -jar で起動可能な mainメソッドクラスを定義した JAR ファイルを 作る方法の紹介は、以前、ここで書いた。 http://blog.zaq.ne.jp/oboe2uran/article/1087/ さらに、同じプロジェクトでつまり、1プロジェクトで2個の…

ModalWindowの中Datepicker/Autocompleteの問題

Wicket の ModalWindow の中に jQueryUI の Datepicker 等を配置すると、 ドラッグした時に残されるのでドラッグさせない方法を先日、 http://blog.zaq.ne.jp/oboe2uran/article/1124/ で書きましたが、やはりモーダルウィンドウとしての価値がなくなり良く…

mybatis で、MULTIPLE INSERT を書く

MyBatisで、MUTIPLE INSERT を実行するのは、foreach を使います。 例) //テーブルのデータ定義クラス→Item public class Item implements Serializable{ public String item; public int price; public Item(){ } } // mybatis の SQLセッション、…

GROUPCONCAT の注意

SQL

MySQL の GROUPCONCAT 連結した文字数に制限があった。 思わねところでハマった。 show variables like 'group_concat_max_len'; で確認すると、1024 これがデフォルト! うっかりすると超えてしまう。 環境変数:group_concat_max_len をセットすれば良…

ListView で AjaxSelfUpdatingTimerBehavior

定期的に表示更新するリストを作ろうと思って、 AjaxSelfUpdatingTimerBehavior を直接 ListView に付与してしまうと、以下のエラーになる。 This component is a repeater and cannot be repainted via ajax directly. Instead add its parent or another m…

月数など単純なDropdownChoiceを使うケース

Wicket の DropDownChoice で型を Integer にしたシンプルなケースの注意すべきこと。 1~12の数のプルダウンを用意する場合、 <select wicket:id="month"></select> List<Integer> monthlist = new ArrayList<Integer>(); for(int i=1;i <= 12;i++) monthlist.add(i); DropDownChoice<Integer> month = new DropDownChoi</integer></integer></integer>…

Palette という呼び名のコンポーネント

Wicket の extension には昔から Palette なるものが存在してました。 意外にも使いやすかったのですが、あまり使うことがなく忘れてました。 前のWicketで使われてなかったjQuery で再現してみたところ、jQueryコーディング の良いトレーニングになります。…

日付の正規表現

日付の正規表現というと、よく次の式を長年使ってました。 ^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$ もしくは、 ^\d{4}/(0[1-9]|1[012])/(0[1-9]|[12][0-9]|3[01])$ javascript のmatch(/.../) で使うなら、 ^\d{4}\/(0[1-9]|1[012])\/(0[1-9]|[…

セルの線にマウスを載せて幅をドラッグするTABLE

何となくネットを徘徊していて見つけたのが、、 HTML table タグ セルの線にマウスを載せて幅をドラッグで自由に変更するというもの。 TDタグ内に収まらない場合、採用しようと思ったけど、 TBODY スクロールをするような表では使えない。 https://githu…

Wicket と input type=&quot;number&quot; 見直し

HTML5 input type="number" を使った時、Wicket では NumberTextField を使った場合、HTML で min 属性や、max 属性を書いても消えてしまう。 Wicket が、HTML5 が普及するまでの間、Validator を提供してきたわけで、Range のバリデータを書くのが、 Wicket…

ドラッグさせないWicketのModalWindow

Wicket のモーダルウィンドウをドラッグできないようにすることはできないだろうか? と悩んでいた。http://blog.zaq.ne.jp/oboe2uran/article/1116/で書いたように、 jQuery UI の datepicker や autocomplete をモーダルウィンドウの中に配置すると ドラッ…

Wicketのモーダルウィンドウの背景の透過率

Wicketのモーダルウィンドウの背景の透過率、CSSの opacity は、0.1 である。 これを変えたい時、もっと暗い透過率を下げたい時は、以下のように div のスタイルシートを変える指定を行う。 div.wicket-mask-dark { opacity: 0.45; }

Tooltip は、jQuery UI で実装するのが良い

先日、table内のテキストを省略表示させる方法を書いたので、更にCSSでTooltip表示する方法、 以下のように、tdタグの中は、同じテキスト続けて span タグで書いて、 <td>テキストAAAAAAA<span>テキストAAAAAA</span></td> CSSとして、 td{ overflow: …

table の td で、text-overflow: ellipsis

table の td で、text-overflow: ellipsis を有効にする方法を調べると、 よく、table の属性に、table-layout: fixed を指定して td { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 200px; // ←幅を指定 } というのがよくネッ…

PDFを結合する、javaプログラムで。

iText で実行するPDFを結合するクラスを書いてみた。 import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; import java.util.Collection; import com.lowagie.text.Document; import com.lo…

JVMのフォント追加

Jasperreports を使用して発覚したのですが、Windows PCで作成した jrxml を、Linux CentOS に持っていき、 Jasperreports のコンパイルをして使用しようとしたら、 MS 明朝がない、とエラーになってしまった。 確かに、GraphicsEnvironment.getLocalGra…

自前のモーダルウィンドウ

以前、固定のモーダル表示ということで、書いたのですが、 http://blog.zaq.ne.jp/oboe2uran/article/1049/ やはり、ドラッグ可能なモーダルウィンドウと呼べるものに書き換えてみました。 jQuery-UI を使います。 外観としてシャドウも付けます。 赤字が修…

JVM実行環境のフォント

JVM実行環境のフォントファミリーを調べるなら、 java.awt.GraphicsEnvironment を使えばいいんですね。 GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames() これが、フォント名の配列 String[] を返してくれます。

Wicket ModalWindow で Datepicker は、、

Wicket のモーダルウィンドウ(ModalWindow)上に、jQuery-ui のDatepicker を配置しない方が良いみたいだ。 一見、想定どおりに表示できても、、 カーソルでモーダルウィンドウの上のバーのハンドル部分をクリックしてドラッグすると、、 このようにズレてし…

float を使わないwidth: 100% のデザイン

ul liタグ、CSS float によるタブレイアウトは、width サイズを指定する場合には、有効であるが、 ウィンドウいっぱいの 100% では、ウィンドウを小さくした時に崩れてしまう。 width: 100% で、フラットなデザインのタブを書くのに有効な方法の1つが、posi…