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

Wicket8 + Tomcat9 + Websocket native broadcast

1年以上前、broadcast ALL での WebSocketBehavior の方法は確立していた。 Tomcat 8.x + Wicket8 で WebSocket native - Oboe吹きプログラマの黙示録 見直してみれば、、 org.apache.wicket.protocol.ws.api.WebSocketPushBroadcaster の broadcastAll…

Tabulator のチェックONOFFデザインを持ってくる。(3)

Tabulator のチェックONOFFデザインを持ってくる。(1) - Oboe吹きプログラマの黙示録Tabulator のチェックONOFFデザインを持ってくる。(2) - Oboe吹きプログラマの黙示録SVG でも、innerHTML できるようにする Polyfill - Oboe吹きプログラマの黙示録…

SVG でも、innerHTML できるようにする Polyfill

あるんですね。https://github.com/dnozay/innersvg-polyfill Polyfill 所謂、まだ機能が追いついてないブラウザに対して補うためのライブラリ、 これを使うと IE9以降でもSVGタグで、innerHTML を実行できます。 github サイトから、配布してる innersvg.j…

Tabulator のチェックONOFFデザインを持ってくる。(2)

昨日書いた oboe2uran.hatenablog.comやはり、IE11でも表示できるJS版にします 原始的に、DOMの innerHTML を使います。HTML <h2>width × height : 24</h2> <div class="case1"></div> <h3>border</h3> <div class="case2"></div> <h2>width × height : 14</h2> <div class="case3"></div> CSS は前回と同じです。 svg.chk-on path { fill: #2dc214; clip-ru…

Tabulator のチェックONOFFデザインを持ってくる。(1)

jQuery のプラグイン、Tabulator のチェックON/OFF のデザインは、SVGで作成されているので Tabulator サンプル等を表示して、SVGコードを抽出して他で利用できそうである。 このチェックON、OFFのSVGコードのHTMLタグを抽出すると以下で…

jQuery ui ダイアログのタイトルバーの大きさ調整

jQuery ui ダイアログのタイトルバーが大きすぎると思ったので調整 通常は、、、 これが大きいと思うなら、、 .ui-dialog-titlebar{ padding: 0.3rem !important; font-size: 0.5rem; } タイトル文字列を指定しなければ、、

jQuery ui ダイアログの制御ボタンの表示位置調整

久々に jQuery UI ダイアログのコードを書きました。ちょっとしたメモとしてここに残します。 何も気にせずに、マニュアルどおりに書けば、、、 HTML・・・ダイアログ表示させる div <div id="dialog"></div> JS・・・ダイアログ var dlg = $('#dialog').dialog({ autoOpen: false…

Tabulator CSV download を BOM 付きにする

Tabulator で表示した表から、BOM付きのCSVダウンロードするには、 2通りの方法がある。 ・Custom File Formatter を使う方法 ・Format Data Before Download を定義する方法 いずれも、対策するためにカスタマイズする方法を示したマニュアルが http://tab…

TypeError: e.indexOf is not a function

jQuery を書いていて、今まで動いてたのは、 HTML に、iframe タグ、src は適当に何かを指すようにしてあって、表示サイズを0 (=あえて、隠しておく) <iframe id="otherframe" src="xxxx" width="0px" height="0px"></iframe> 何からのイベントで、load(function(){} )で、印刷プレビューを表示していたのですが、、 $('#otherf…

Java Process の実行ラッパーをラムダで

昔、java.lang.Runtime から Runtime.getRuntime().exec で Process を作ってスクリプトを実行するラッパーを書いていた。 Process p = Runtime.getRuntime().exec(this.arrange()); _ProcessStreamReader p_stderr = new _ProcessStreamReader(p.getErrorSt…

Uncaught TypeError: Cannot read property 'step' of undefined

jQuery 2.x → 3.3.1 upgrade した時、jquery-ui エラー Uncaught TypeError: Cannot read property 'step' of undefined StackoverFlow に書いてあるように、 https://stackoverflow.com/questions/45356723/jquery-ui-cannot-read-property-step-of-undefin…

ブラウザへのファイルドロップ禁止する

JavaScript で抑制します。 window.addEventListener('dragover', function(ev){ ev.preventDefault(); }, false); window.addEventListener('drop', function(ev){ ev.preventDefault(); ev.stopPropagation(); }, false); これで、マウスでPCのローカル…

Wicket のファイルアップロード、じつはドラッグ操作に対応していた。

システム要件で意外とファイルアップロードの要件は少ないもので、今まで気づかなかったのですが、 ドラッグ操作でファイルアップロードする(処理)振る舞いを Wicket-extension は、すでにあったのですね。 wicket-extensions-8.0.0.jar の中にありますね…

リンクをクリックでシリアライズ化した Consumer ラムダを実行

Wicket の 簡単な記述で実現してみたくなりました。 Wicket 8 を使います。org.apache.wicket.markup.html.link.Link を継承したクラスで作ります。 どんな名称にしたら良いか悩みましたが、センス無いとは思いましたが、 もういっそのこと、そのまんま、 Cl…

Wicket の日付時刻入力フィールド

Wicket 日付時刻入力フィールドは、昔から wicket-extension に DateTextField があるが 今の時代の LocalDate , LocalDateTime には対応してなく、書式や手数も多く使いづらい。 Wicket 以外の DatePicker を使うことが多く、TextField<Strring> を使う方がバグも少</strring>…

Uncaught SyntaxError: Unexpected token Error

Wicket8 の Web を書いていてこれに遭遇。 Uncaught SyntaxError: Unexpected token < Webコンテキスト直下に js ディレクトリ、jquery-3.3.1.min.js を置いて 単純に、wicket:head タグで、 <wicket:head> <script type="text/javascript" src="js/jquery-3.3.1.min.js"></script> </wicket:head> と書いただけなのに、、凄く悩んだ、 原因は、WebApplication …

文字列のHEXダンプを作る

Apache の commons io の HEXダンプ、 org.apache.commons.io.HexDump の dump(byte[] data, long offset, OutputStream stream, int index) 結果は、左端に offset のサイズ目盛があって良いのだけれど、 以下のように少し横幅が長く、HEXの表示部と文字列…

Wicket8 の LambdaModel の setter の書き方

Wicket8 になって登場した LambdaModel IModel<T> LambdaModel.of(SerializableSupplier<T> getter, SerializableConsumer<T> setter Pageクラスに変数とsetter/getter を用意すればメソッド参照で、 queue(new TextField<String>("item", LambdaModel.of(this::getItem, this</string></t></t></t>…

Java10 の Optional orElseThrowメソッド

元々、Java8 以降で、Optional の get() を使うことは、Optional の目的、性質からしてあまりなかった。 Java10 になっても、get() は、Deprecated アノテーションはついてない。 https://bugs.openjdk.java.net/browse/JDK-8160606 と、OpenJDK でこの先、D…

ClassNotFoundException WicketFilter

Eclipse 4.8 (Photon) 、Tomcat9 、Java10 、Wicket 8.0.0 で、Web起動しようとしたら、何か設定をミスったのか、抜けがあって、 ClassNotFoundException: org.apache.wicket.protocol.http.WicketFilter で起動しない。どうもMaven で環境作った WEB-INF/li…

CSV書込み lineterminator の指定でハマる

import csv csv.register_dialect("MyDialect", quoting=csv.QUOTE_ALL, lineterminator='\n') と書いて、 with open("sample.csv", "w", encoding="utf-8") as f: w = csv.writer(f, "MyDialect") w.writerow(header_list) w.writerows(array_list) と書い…

getResource から、配下の全てのファイルの操作

絶対の例外発生しないけど例外 throwable 宣言にメソッドを使用するのにわざわざ、try~catch ハンドリングを 書きたくなくて用意した、、、Throwable~ 関数型インターフェース Throwable~ 関数型インターフェースを使う - Oboe吹きプログラマの黙示録 と…

Properties 読込みを考え直す。

Java の Properties 、properties ファイル読込みは古くから存在して過去、 設定ファイル地獄で皆、苦しんだ歴史がある。そして、convention over configuration が提唱され それでも日本の多くのシステム屋は、うまくバランスを持ってきたとは言い難い。。 …

Python で今月の日数分のループ

メモ書き。。。 # -*- coding: utf-8 -*- import datetime import calendar today = datetime.datetime.today() for ix in range(calendar.monthrange(today.year, today.month)[1]): d = datetime.datetime(today.year, today.month, (ix+1)) print(d)

Python での BOM書込み

Python でBOMを書き込む時は、以下のようにする import codecs with codecs.open(outputPath, "a+", "utf-8") as fd: fd.write(u'\ufeff')

同率順位発生でスキップさせた振り方

TV新聞紙面で見るスポーツの結果、Golf など、同率順位を並べた後の順位は、 名前 point 順位 A 100 1 B 100 1 C 80 3 で表されることが多いです。 名前 point 順位 A 100 1 B 100 1 C 80 2 と、純粋にシーケンシャルに順位が振られているのを、スポ…

Duke ちゃんに叱られる

Java 界隈で やれ、「ラムダ式が。。」 やれ、「JEP 286 Local-Variable Type Inference を称賛する人と違和感の人がどうこうの。。。」 やれ、「Java 11 になれば、jdk.incubator.http として登場した JEP 321: HTTP Client はインキュベータでなくなる??…

Pattern Match 結果の Stream

Java 9 からは、java.util.regex.Matcher に、待望の public Stream<MatchResult> results() が追加されたが、 Java8 のままで同様の Match 結果の Streamを取得するのに、 去年、以下をここに書いた oboe2uran.hatenablog.comそして、 https://github.com/yipuran/yipura</matchresult>…

Throwable~ 関数型インターフェースを使う

Java のコードを書いてると、時々 例外発生 throws 節宣言のメソッド呼び出しを 書いていると煩わしくなります。 日付書式解析のParse の Exception や、以下 など。煩わしいと思う時があります。 URL url ; // URL セット URI uri = null; try{ uri = url.t…

JSON配列書式の読込みを Gson と Python で比較

これを書いたので、では Python と比較。。。 oboe2uran.hatenablog.com 題材: [ "a" , , "c" ] というテキストの解釈Python の方、 [ "a" , "b" , "c" ] というテキストであれば、、 import jsonprint(json.loads('[ "a", "b" ,"c" ]'))は、 ['a', 'b', 'c…