システム開発で思うところ

Javaで主にシステム開発をしながら思うところをツラツラを綴る。主に自分向けのメモ。EE関連の情報が少なく自分自身がそういう情報があったら良いなぁということで他の人の参考になれば幸い

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

Lambdaを使って内部リストを暴露しないで処理をする

最近、ちょっとずつStreamAPIだけでなく、Lambdaを使うことに少しずつ慣れてきつつあります。 Lambdaは無名クラスが簡単に使えるくらいの印象しか持っていなかったのですが、遅延評価の仕組みとして 徐々に使い方が分かってくると 何でもトンカチで殴りたく…

JSFでツールチップ

JSF

vermeer.hatenablog.jp の続きと言うか、ついでに。 やりたいこと エラーメッセージを入力領域にツールチップを出力する やりかた xhtmlのinput要素のtitleにエラーメッセージを出力する 前回の記事と ほぼ同じ発想です。 実装 Titleに出力メッセージを扱う…

JSFでエラーフィールドの背景色を変える(3)

JSF

vermeer.hatenablog.jp の続き。 前回の記事で 課題とした https://github.com/system-sekkei/isolating-the-domain のように 背景色というよりも、指定領域のスタイルを変更する という要件には応えられていません。 について、今回は取り組みたいと思いま…

JSFでエラーフィールドの背景色を変える(2)

JSF

vermeer.hatenablog.jp の続きです。 私の仕組みでは、Application層の検証不正に対しても画面項目と関連付け出来るようにしています。 そこで その仕組みを利用して 先のパターンに独自の実装を追加します。 やりたいこと やりかた 実装 UIInputのClientId…

JSFでエラーフィールドの背景色を変える

JSF

ConversationScopedで 戯れた日々を終え、メッセージ関係に戻って 新たな取り組みを。 入力フィールドの背景色を変えるという定番です。 定番ですが、ここまで引っ張ってしまったのは この定番をやろうと思ったときに ViewIDをイイ感じに BeanValidationと連…

NonexistentConversationExceptionからの画面遷移

vermeer.hatenablog.jp と vermeer.hatenablog.jp の続きです。 今回はNonexistentConversationExceptionからの画面遷移を考えます。 やりたいこと(妥協もあり) NonexistentConversationExceptionからの会話開始画面へ遷移する 状態管理は不可 メッセージ…

NetBeansのメモ

http://www.torutk.com/users/3NetBeans 9セットアップ - ソフトウェアエンジニアリング - Torutk

BusyConversationExceptionからの画面遷移

vermeer.hatenablog.jp の続きです。 前回は、強制的に会話スコープの開始ページに遷移するという仕様としましたが、正直 これは 私の求めている機能ではありません。 それぞれの例外に対して、目指す振る舞い(できる処理)が異なるので まずは BusyConvers…

BusyConversationException、NonexistentConversationExceptionからの画面遷移

vermeer.hatenablog.jp に続けて vermeer.hatenablog.jp でも、一旦 保留とした BusyConversationExceptionが発生した場合の制御です。 実行時例外はエラー画面へ遷移させるというのが基本原則だとは思いますが、コミットした情報(例えば注文)について把握…

ConversationのBeginをviewAction以外で実現する

vermeer.hatenablog.jp vermeer.hatenablog.jp 課題 viewActionはルートとなるViewに記述しないといけない に対する対処です。 方式として、Interceptorが使えないというのは 検討済みでした。 会話が未開始の画面から遷移したときには、良い感じにBeginして…

ConversationScopedを扱うにあたっての課題

もしくは、JSFのConversationScopedをフォルダでBegin・Endの方式見直しに向けて。 あるいは、ConversationScopedにおけるExceptionハンドリング です。 vermeer.hatenablog.jp で、f:viewActionで制御をしていたのですが、テンプレートを使って 同じことを…

ConversationScopedのタイムアウトからの画面遷移

他のExceptionHandlerを実装している中で 以前の記事 vermeer.hatenablog.jp で扱っていなかったタイムアウト周りの制御を やってみました。 ベースとするプロジェクトは、以前のサンプルのものではなく 以下のものに実装を加えて行いました。 vermeer.haten…

JSFで指定の場所に検証結果のメッセージを出力する

vermeer.hatenablog.jp の続き。 出力順序とは別モノですが メッセージを指定の場所に出力するというのをやりたいと思います。 おそらく、ですが 一般的な JSFにおける Valisationと 対象項目に対してメッセージを出力するための流れとしては 入力項目のidと…

Oracle Code One 2018 報告会 に行ってきました

感想とかではなく、今後、振り返るための情報収集です。 togetter togetter.com スライド Code One Overview & Java in Container いとうちひろさん (@chiroito) スライド公開なし Vector API from Project Panama 吉田 真也さん(@bitter_fox) speakerdeck.c…

Application層の検証結果の出力順序を制御する

vermeer.hatenablog.jp 上記ではDomainやFormでの検証結果については、Pageクラスで指定した順序でメッセージ出力する事が出来ました。 ですが、Application層以降の検証不正については、レイヤーを跨った関連付けをする仕組みを持たないと その順序性を管理…

パッケージ構成の考察(2)

最新の考察 vermeer.hatenablog.jp はじめに vermeer.hatenablog.jp で ベースを考えて 以下の参考プロジェクトを コツコツと肉付けしています。 vermeer.hatenablog.jp 新しい機能を実装する中で段々と どのパッケージに どのクラスを配置させるのが良いの…

Application層の検証結果をPageに関連付ける方法を考える

Application層の検証結果をControllerで どうやってPageクラスに関連付けるか。。やり方に加えて 実装表現も含めて どうしたものかなぁ。アノテーションによる情報指定だとマッピング対象が大量にあった場合、どうにも不細工な気もするし。。しっくりくるイ…

Page/Formのvalidateを見直す

vermeer.hatenablog.jp vermeer.hatenablog.jp で考えたことに対して、実際の実装を経て 妥協(?)した vermeer.hatenablog.jp を踏まえて、改めて整理をした方が良さそうに思い 考えてみることしました。 はじめに 考え直してみようと思ったことを呟いたも…

Serviceを実装

vermeer.hatenablog.jp の流れで、Application層のServiceを実装することにしました。 また、Serviceの事前条件不正などをクライアントで どうやって出力するのか という検討の準備でもあります。 Serviceの基本的な あり方については 以下の記事で以前 整理…

レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡 に参加してきました

ddd-alliance.connpass.com に参加してきました。 懇親会にも参加*1。 さて、ブログに勉強会のことを書こうかな、と思ったのですが 私が、いい加減に まとめるよりも 遥かに良く かつ 素早いまとめがありましたので、そちらを紹介。 dev.classmethod.jp 私は…

【雑記】銀行の相談窓口

こういう特殊用件のための支店はまだ必要だし、夜間や土日に開いている意味は大きいと思うけど、そんなの支店、たいした数はいらない。— ちきりん (@InsideCHIKIRIN) 2018年9月26日 という、ちきりんさんのツイートを見ていて思ったこと。 結論 常設の相談窓…

ユースケースじゃなくてサービスとしよう

何となく使っている ユースケースという言葉ですが、自分の中でも あやふやな使い方をしているし、実際 理解もあやふや。 ある種の あやふやさ というか 曖昧さ は残ることは分かっているけれど、ユースケースという表現をつかったシステム実装を採用したい…

画面項目の順序にあわせたメッセージを出力する

vermeer.hatenablog.jp の続き。 メッセージを任意の順番で固定で出力させました。 具体的にはメッセージを画面項目にあわせた出力をしています。 出力結果 FormValidation Form側で行っているValidationは、入力必須検証 だけです。 それ以外の桁や型につい…

画面項目とメッセージ出力順序

vermeer.hatenablog.jp の続き。 メッセージ一覧の出力順序について もう少し具体的にイメージを整理して どのパターンのまで 実装のルール決めで出来そうか考えてみたいと思います。 項目毎にメッセージ出力する というパターンは今回は扱いません。 画面イ…

メッセージ出力順序を整理

vermeer.hatenablog.jp の続き 今更ですが 特に明示はしていませんでしたが メッセージとは エラーメッセージです。 順序はPresentation層で 表示要件はDomainの主たる関心事というよりも 各ページ毎の仕様です*1。 メッセージの出力順序を制御するのであれ…

絵文字のメモ

絵文字関連のメモ これ、まともにやろうとしたらかなりシンドイぞ。。 リンク Unicode 絵文字にまつわるあれこれ (絵文字の標準とプログラム上でのハンドリング) UTF-8時代の環境依存文字チェック ~そこに文字はあるか~ Javaでお手軽に絵文字を使うライブラ…

【考察】Validationと結果出力

vermeer.hatenablog.jp の続き的なところ。 結論としては、メッセージ出力順についての検討を次にやろうかな、に至るまでの経緯というか そのあたりの考察を まとめたものです。 メッセージ表示順序は検証優先度とは別物である 検証要件と検証実施は別物であ…

【雑記】コンテナというかマイクロサービスというか そんなところについて

vermeer.hatenablog.jp あとブログはかけませんでしたが bmxug.connpass.com 当たりの話を聞いて、なんとなく、思ったところがあって、もやもやしたままだったところを、現時点の感想レベルで 自分なりに残しておこうと思います。 結論 現時点で 分散管理が…

Java EE(JSF)でDDDのようなことを考えてみる(2)

vermeer.hatenablog.jp から、多少の肉付けをした版。 やったこと Validation ValidationExceptionの制御 メッセージ(出力まで) ConversationScope制御 Redirectの強制 基本は過去の記事などで取り扱った要素を組み込んだ感じです。 DDD的なところ? あん…

SelenideでcheckedなRadioButtonの情報を取得する

ぱっと調べて、意外とヒットしなかったので記録しておこうと思います。 Selenideで、RadioButtonに値を設定するという実装例はネットで すぐに見つかったけど、逆が無かったので。 public SelenideElement selectedGenderValue() { ElementsCollection items…