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

File.separator の処理

ファイルのPATH Windows でも Linux でも、階層に分けた同じ結果リストを求める。 どういう課題かというと、、、Windows c:\a\b\cLinux /a/b/cとある時、 a a/b a/b/cというリストを改行出力した結果を得たい。 Windows 環境の PATH であろうが、Linux環境で…

Files.lines を使おう。

Java で 有名なフレームワークを使った Webアプリ開発ばかりやっていると、 ファイルシステム上のテキストファイルを1行ずつ読込み処理するというものを作る機会は 案外、少ないもので、どうするんだっけ。。と思いだすまで数十秒かかってしまい自己嫌悪。…

tar and zip の圧縮・展開

昨日書いた FileCollection は、実はこの tar and zip の圧縮・展開 を書く為の伏線です。 oboe2uran.hatenablog.comApache commons compress を使用して https://commons.apache.org/proper/commons-compress/関数型インターフェースで圧縮・展開を用意した…

FileCollection

昨日の続き、、ディレクトリを走査するもの、名前が良くないので、FileCollection と名付け さらに、Predicate を走査ではさみたくなった。 import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.function.Consumer; …

ディレクトリツリーを走査を再興

昔、再帰関数で書いたのかもしれないけど、改めて再帰関数、結局これしか思いつかないけど 久々に for 文を書いてみました。(Java8 になってから、本当に for文を書く機会が減った。。。)要の再帰関数は、、 private List<File> parse(File file, List<File> list){ l</file></file>…

Tomcat 8.x + Wicket8 で WebSocket native

Tomcat 8.x + Wicket8 で WebSocket native がなかなかうまくできず苦労していたのだが、 やっと解った。。Tomcat 7.x + Wicket7 では、WebSocketFilter と WicketFilter を web.xml で2つ書いてURL による切り分けをしてたのですが、 Tomcat 8.x + Wick…

favicon.ico resource 404 status

Webサーバを起動後、作成したページにアクセスして、以下のように ブラウザ側でエラーが出る場合の対処方法、、failed to load resource the server responded with a status of 404 ... favicon.ico生成してるHTMLヘッダに、以下を追記する。 <link rel="shortcut icon" href=""></link>

XStream null value を出力するケース、再び書き直す。

先日書いた、カスタムのコンバータで、XStream でXML出力する時の NULL の値のタグを書くケース、 HierarchicalStreamWriter を BiConsumer で渡して書かせるなんてやはりセンスないので、、、 oboe2uran.hatenablog.com先日の方法ではなく、NULL で空タグを…

XStream アンダースコアを含むタグのXML出力、

XStreamは、アンダースコアを含むタグをダブらせて、、2個のアンダースコアにしてしまう!!そういう仕様で規則だ。 これを避けるには、XStream インスタンス生成を、 Stream stream = new XStream(new DomDriver("UTF-8", new XmlFriendlyNameCoder("_-", …

XStream の CDATAセクションの書き方

XStream で、CDATAセクションを出力するには、XStream のコンストラクタに、HierarchicalStreamDriver 実装の Driver を指定し、指定する Driver が、createWriter で返す Writer が、直接テキストを判定して書かせるしか ないみたい。 try(OutputStreamWrit…

PostgreSQL のアップサートとMySQLのアップサート

SQL

PostgreSQL に馴染みがなく、アップサートあるいは、SERIAL に困惑している。 MySQL には、AUTO INCREMENT があり、例えば、以下のようなテーブル CREATE TABLE sample ( id INT NOT NULL AUTO_INCREMENT, point INT, price INT, PRIMARY KEY (id) ) ENGINE=…

Google gson fromJson で、 Map<String, Object> への変換は落とし穴。。。

Google gson fromJson を使用する場合、通常変換先は自分で用意するクラスがほとんどのケースであり、 であり、Object に変換させることはあまりやらない。 Gson gson = new GsonBuilder().serializeNulls().create(); Map<String, Object> map = gson.fromJson("{a:0}", new</string,>…

XStream null value を出力させるケース、修正

XStream null value を出力させるケース、先日の XStream を使うかどうかは、NULL value をどう扱うかが問題 - Oboe吹きプログラマの黙示録 の方法は、やはり良くない!!書込み専用になってしまうからである。やはり、ReflectionConverterを継承して doMars…

XStream を使うかどうかは、NULL value をどう扱うかが問題

XStream は、アノテーションによるXMLに対するJava Object のマッピング、コンバータの指定ができていいのだけど、 stackoverflow.comここで書かれたように NULL を 中身空のタグでXMLを書く場合に指定方法が文字列、String型でしか逃げ道がない…

XStream 読込時にタグを無視させる方法

XStream で XML を読み込むとき、タグに対する Java オブジェクトフィールドが存在しないと、 わりと丁寧に詳細なエラーを出してくれる。 com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$UnknownFieldException: No such fiel…

XStream 使ったら、Security framework of XStream not initialized, XStream is probably vulnerable.

XStream を使ってみたところ、 XML読込みをしたら、読込みは成功するものの、標準エラー出力、System.err で Security framework of XStream not initialized, XStream is probably vulnerable.が出力された。使ったバージョンは、1.4.10 public static v…

Link.onClick static が消滅して欲しくない。それならば、、

Wicket8 でラムダによる AjaxButton.onSubmit static メソッドの登場と思いきや、8.0.0-M4 から M5 以降で消滅して AjaxFormSubmitBehavior を使うのを納得したが、Link の onClick static メソッドでのラムダも消滅してるのは、 非常に残念だ。 Ajax ではな…

AjaxFormSubmitBehavior があるから心配ない。

先月、Wicket-8.0.0-M4 から M5 まで更新された時、 AjaxButton.onSubmit staticメソッドの BiConsumer 使用が 削除されていて、ショックだったけど、Wicket 8.0.0-M4 から M5 で、AjaxButton.onSubmit が。。。 - Oboe吹きプログラマの黙示録 よーく調べる…

Exception の root の取得

Exception の root の取得で良い方法はないのか。。。 }catch(Exception e){ Optional<Throwable> rootCause = Stream.iterate(e, Throwable::getCause).filter(t->t.getCause()==null).findFirst(); String errormessage = rootCause.get().getMessage();</throwable>

モーダルウィンドウ使用時の datepicker

Wicket のモーダルウィンドウ使用時に注意しなければならないのは、 呼び出し Page とモーダルウィンドウの Panel 両方で jQuery Datepicker を配置したときである。 モーダルウィンドウを起動したとき、モーダルウィンドウの中で Datepicker が効かなかった…

任意のセレクタまで、アニメーションでスクロール

memo任意のセレクタまで、アニメーションでスクロールさせる。例)table の tbody でスクロールを書いた時など。。。 $('tbody').animate({scrollTop:$('tbody tr:nth-child(20)').offset().top}); offset() でスクロールで表示させたい行のオブジェクトを取…

input type="radio" のラベル、チェックされてる時のスタイル属性

CSS

メモ input[type=radio]:checked + label{ background-color: #ff00ff; color: #ffffff; } のように書く。

Wicket 8.0.0-M4 から M5 で、AjaxButton.onSubmit が。。。

Wicket 8 の機能として注目だったラムダの対応も、 8.0.0-M4 までは、 onSubmit(String id, SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit , SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onError) onSubmit(String id, SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit) これらのメソッドが加わっていて喜ん</ajaxbutton,></ajaxbutton,></ajaxbutton,>…

Wicket8 の Tomcat 8 で Websocket に苦戦中

2017-6-25 に回答oboe2uran.hatenablog.com 先日、Wicket 8 の websocket - Oboe吹きプログラマの黙示録 で書いたが、改めて取り掛かった。Wicket の native-Websocket を使おうと、Tomcat 8.0.43 で起動できない。 Websocket にそんなに魅力を感じてるわけ…

input テキストフィールドでカーソルの位置を指定する。

HTML input テキストフィールドで任意の範囲を選択するには、 <input type="text" value="1234567890"> jQuery で、focus して、setSelectionRange( 開始位置、終了位置 ); $('input').focus().get(0).setSelectionRange(3, 6);setSelectionRange で指定する値は、0始まりで数える。この setSelect…

原始的なHTTPクライアントサンプル

久々に HTTPクライアントプログラムを書く。 以前は https://hc.apache.org/ を使うことばかりしていた。chunk発生を考慮すれば当然だった。でも、限られたネットワークで軽量に動かしたく前にも書いたかもしれない 原始的なHTTP クライアント (=他の…

Enumeration から Stream

Enumeration から Stream にする。 java.util.Collections の list を使って、Stream にする。 Collections.list(getRequest().getParameterNames()).stream().forEach(key->{ }); こんな感じ。。。

Wicket ModalWindow full screen

Wicket ModalWindow full screen と言うと、ちょっと言い過ぎだけど、つまりブラウザで開いたページ表示一杯の 幅、高さで ModalWindow しかも caption なしの ModalWindow に見えない ModalWindow を出したくなった。昔、captionが無い~フレーム枠が存在し…

window.close() の実行

JavaScript で開いている自身のページのブラウザWindow は、セキュリティのために閉じられないように なっているが、aタグ target="_blank" 開いた先での window.close() は効いてくる。結構昔から、いろんなことが試されていた。 stackoverflow.com

jQuery UI の datepicker trigger を画像でなくてフォントアイコンで指定

jQuery UI の datepicker を使ってるWebサイトで、わざわざアイコンのボタンによる picker 呼出しをするデザインがなんか釈然としない。https://jqueryui.com/datepicker/#icon-triggerにあるようなカレンダーアイコンをクリックで呼び出すもの。これより入…