2018-01

【Java】【HTML】特定の文字をサーバにPOSTすると、あるブラウザでPOSTしたときだけ違う文字に書き換えられる件について


「テキストボックスやテキストエリアに文字を入力してサーバにPOSTするとき、リクエストを送るブラウザによってサーバ側が受け取る文字(正確には「文字コード」)が変わる」
というケースを発見したっていうか実際に遭遇した。
これはちょっと前にツイッターでつぶやいた以下の内容に端を発し、事象を追求していく中でわかった事実である



これが、どういう理由や背景があるものなのかわからないが、
こういう、「サーバ処理に届く前に値を書き換えられる」というようなことやられると、
基本サーバ側で待ち構えているプログラムでは手の出しようがなくなるので、ちょっと困る。
(自分たちが作った範囲以外で起きる事象に対する動作保障はできない、というのが一般的な見解だ…昨今はそれが通じないことも多いが)
とりあえず実験してわかった範囲での記録をここに挙げていく。

※実験の過程で、WikipediaのUnicodeのページを参考にさせていただいた。
https://ja.wikipedia.org/wiki/Unicode
以後「Wikipedia」でという記述が合ったら上記のリンク先のページがそれだと解釈していただきたい。


 


【障害記録】No.8:月次のデータ削除処理が48時間を超えて長時間走行


自分が体験したシステム障害を紹介してトラウマを抉り返す自虐コーナー
※特定避けるため一部脚色・変更しているが、大体ほぼ実体験。

障害No障害分類No
(自分用)発生分類
アプリ/データ/ミドル/ハード案件名個人的ヤバイ度
(5段階評価)

8 B アプリ 月次のデータ削除処理が48時間を超えて長時間走行 ★★★☆☆

 


 


【障害記録】No.7:アップロード処理のレスポンス改善対応


自分が体験したシステム障害を紹介してトラウマを抉り返す自虐コーナー
※特定避けるため一部脚色・変更しているが、大体ほぼ実体験。

障害No障害分類No
(自分用)発生分類
アプリ/データ/ミドル/ハード案件名個人的ヤバイ度
(5段階評価)

6 B アプリ アップロード処理のレスポンス改善対応 ★★☆☆☆

 


 


【Java】同一パッケージ同一クラス名が別々に存在していた場合(クラス競合時)の挙動に関する実験


ふと思い立ってやってみた実験。
jar内と自作したクラス、もしくはjar同士などで、クラスが競合している場合の動きを実験する。
「競合」って言い方が正しいのかどうかわからないが、要するに
「com.test.Test」みたいなクラスがあったとき、
それとまったく同じパッケージ構成・名前のクラスが、別々の場所にそれぞれ2つ(ないし2つ以上)存在していた場合の挙動に関する実験である。
現プロジェクトでも一部のクラスが完全競合しているので動きが少し気になっていたのだ。
周囲の風説(?)に寄れば、「こういう場合、Javaの気まぐれに寄るので、どっちのクラスが使われるのかわからない」という、恐ろしい内容も耳にしている。
一方で、「クラスパスに指定した順(クラスローダ―が読み込む順)に応じて順次上書きしていく」というような話も聞いている。
どっちが正しいのか?実験してみる。
まあそもそも競合なんておこさないほうがいいに決まってるんだけどね。


 


2回目の1月13日。


どうでもいい話なんだけど、
2016年1月13日に禁煙し始めてから今日でまる2年です。
なんで覚えてるかというと、画像にあるように、
自分から禁煙を周囲に宣言したからです。



尊敬するアーティスト細見武士さんは、
ELLEGARDENが活動休止した9月7日に毎年ブログでその思いを綴っていますが、
それを真似て(もじって?)毎年この日に禁煙について語ってみたいと思いました。
1年目は思いつかなかったので綴ってませんけども、
2年目の今日から初めてみようと思います。



【フェス】2018/01/07 HINA-MATSURI@豊洲PIT(写真)


HINA-MATSURIで撮った写真だけをひたすらあげる記事
(事前事後で結構いっぱい写真撮ったから写真だけでまとめることにしたッ!)

 


豊洲PIT外観。
改めて思い返すともう少しちゃんと撮れるポイントあったはずだが失敗したな…
この日開場は12:30からだったが、到着したのは11:30頃。早く着きすぎた。。
しかし既に会場外には長蛇の列(先行物販の待ち行列だったらしい)