2018-05-01から1ヶ月間の記事一覧

GenericBuilder の強化

Java データエンティティなど、データを表現するインスタンス生成する時に威力を発揮する ものを作っていた。。これを強化しようと思う。 (自分はエンティティという単語、DBに限定してしまうような表現が嫌い) https://github.com/yipuran/yipuran-core…

Wicket URLからページバージョン番号を除外する

Wicket のページは、そのまま使用するとステートフルでページセッションの番号が ブラウザのURLに付与されてしまう。 ?1 → 2回目の表示、 → ?2 昔からこの解決方法は以下 stackoverflow で示唆されてきているが、敢えてここに書くと。。 stackoverflow.c…

Wicket8 StatelessAjax*** は正式リリースには存在しない

Wicket 8.0.0 が出て気がついた。 Wicket-stuff にあった wicketstuff-stateless 8.0.0-M2 これは、Wicket 8.0.0 には入らなかった。。 stateless と statefull 両方混在するサイトを作る場合もあるので、 以下 StatelessAjaxFormSubmitBehavior StatelessAj…

整理する

自分が作ったOSSを github に整理する。maven-repository も配置したgithubにブランチとして置いたので かなり自由に取得して使える可能性は高くなった。 URL 対象 https://github.com/yipuran/jacob JSONを返す目的のWeb Application https://github.com…

GitHub READEMEからWikiへのリンクを張る

GitHub READEME.md を編集 編集中のリポジトリ内への内部リンクは、 [表示文字列](相対パス) の書式なので以下のように書くが、 [詳細説明](/doc/detail.md)READEME.md から、編集中のリポジトリの Wiki ページは、 [to Wiki](../wiki)とすると、実際は40…

ついに Wicket 8.0.0 リリース!!

ついにというか、ようやく出ました。 The Apache Software Foundation Announces Apache Wicket v8.0.0 https://t.co/aznUYJIaho #Apache #Wicket #OpenSource #component #oriented #Java #Web #Framework @apache_wicket — Apache - The ASF (@TheASF) May…

ElasticSearch JavaAPI は log4j2 使用だった。。

ElasticSearch JavaAPI を使用としたら実行時、Log4J の後継、log4j2 が使われていて ERROR StatusLogger No log4j2 configuration file found.log4j2.xml として最低限以下を記述して用意すればで、とりあえずこのメッセージは治まりをみせるが <Configuration> </Configuration> logback+…

kibana をインストール(Windows)

kibana をダウンロード https://www.elastic.co/jp/downloads/kibana Windows は ZIP をダウンロードして展開したら bin の下の kibana.bat を動かせば良いのだが やはり Windows サービス登録したい。 Windows10 なら、管理者実行コマンドプロンプトで sc c…

Windows10 の管理者コマンドプロンプト

Windows10を使うようになって久しく、コマンドプロンプト管理者実行できないと 困るので、管理者実行でコマンドプロンプトを出す方法 Window 右クリックで表示する PowerShell(管理者実行)と切り替える方法 ウィンドウのタスクバーを右クリック 表示される…

ATOM markdown-preview-enhanced でPDF保存できない時

ATOM にmarkdown-preview-enhancedをインストールしてプレビューから PDF保存で、Please npm install -g puppeteer エラーが出る時、メッセージどおり puppeteerをインストールすれば良い。 C:\Users\Uran>npm install -g puppeteer > puppeteer@1.4.0 insta…

PLantUML 画像ファイル出力作成の日本語文字化け

PLantUML を使ってATOM 等で作成した Markdownファイルからシーケンス図、 図形を画像ファイルとして出力するのに、通常 Markdownファイルは UTF-8 で書いて いるが、PLantUML から plantuml.jar をダウンロードして PNG ファイルを作成すると 日本語は文字…

ATOM markdown-preview-enhanced の CSSを調整する

ATOM に追加するパッケージ markdown-preview-enhancedこれでプレビューして右クリック → コンテナメニュー → HTML に保存するのは日常の作業でもよくある。 プレビューのCSSも調整し、そのままHTMLに反映されていればそれで満足。ATOMを開いたら…

ATOM でUMLシーケンス図書くための最低限必要なもの

以下のパッケージ markdown-preview-enhanced plantuml-viewer language-plantuml .md ファイルでもプレビューさせる為に、 markdown-preview-enhanced をインストールして ```plantuml が必要 サンプル ```plantuml @startuml actor ユーザ as User partici…

JSON のキーを指定して対象の値を取得

JSON → 任意のクラスオブジェクトに変換させることなく、 JSON のキーを指定して対象の値、valueを取得するものを汎用的なメソッドを用意しようと考えると 先日紹介した oboe2uran.hatenablog.com を超える機能のメソッドを作るのは難しい。 紹介した GitHub…

2つのJSONの差をラムダで処理する

Google gson の JsonParserを使用して 2つのJSONの差をラムダで処理するもの。 import java.io.Reader; import java.io.StringReader; import java.util.HashMap; import java.util.Map; import java.util.function.BiConsumer; import com.google.gson.Jso…

Chart.js 重なる点のTooltip表示

Chart.js で、線グラフを書いた時に、重なる点をToolTip 表示させる時 注意しないといけないオプションがある。 インタラクションモードと呼ばれている指定オプションで mode というのがある。 point マウスポインタと交差する点、棒グラフ、グラフ描画アイ…

chart.js の レスポンシブ

chart.js レスポンシブ指定で描いたグラフが、ウィンドウのリサイズで canvas の縦横比での リサイズがうまくいかなくてグラフが揺れるように振動してしまうことがある。 表示サイズ(canvas.style.width、canvas.style.height)に対して、 キャンバスのレンダ…

得体の知れない不明なJSON を GSON で解析する

キー名、値の型、ツリー構造が不明(定義を知らされてない)JSON を Google GSON でとりあえず認識させる。 このような要件定義はあり得ないけど、とにかく読み込ませてできる解析をする。 gson の JsonParser から取得する JsonElement を recursively なロ…

GSON の JsonArray を Stream で処理する

JsonArray は、Iterable実装だから、spliterator() より、StreamSupport で Stream 処理できる。json を読み込ませて JsonElement je = new JsonParser().parse(reader); if (je.isJsonArray()){ JsonArray jary = je.getAsJsonArray(); StreamSupport.strea…

メモ: Mapのソートを簡単に書く

Memo Map<String, Object> map; map.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEach(e->{ // TODO e.getKey() e.getValue() }); List<Map.Entry<String, Object>> list = map.entrySet().stream() .sorted(Map.Entry.comparingByValue()).collect(Collectors.toList());</map.entry<string,></string,>

いまいちだった Json-Path を再興

昔、JSON が世の中に浸透し始めたころ、かつてXMLを読み込むの XPATH なる読出し 方法があった。JSON を読み込むために XPATH のようなPath記述ルールで読むものが登場し Google Code Archive に入ってた。 結構、便利な筈で git-hub で公開されており Ma…