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

HeapDumpが出力されない

[事象] HeapDumpBeforeFullGCやHeapDumpAfterFullGCを設定したにも関わらず、ヒープダンプがどこにも出力されない。[原因] catalina.outのログを確認すると、Unable to create java_pidXXX.hprof.nnが権限エラーで出力できないというエラーが発生していた。…

for文を加えると正規表現の挙動が異なる

[事象] findstrを用いて行の先頭の文字列に一致する内容を抽出していたが、for文を加えると挙動が変化して、正規表現の^が評価されなくなった。[原因] 当初の定義と遅延変数展開では差が出てしまうためなのか、なぜか先頭を表す^が消えてしまう。[対応] リテ…

バッチファイルのfor文の変数名

[事象] バッチファイル内でファイルの読み込みを行おうとバッチを作成した。 しかしながら、読み込みが一向に行えなかった。[原因] FOR文の/Fスイッチで指定できる変数名は任意の文字列1文字ということを理解していなかった。 その為、変数名から_を外したり…

jsvcで起動するとtomcat7がうまく起動しない

[事象] jsvcの起動スクリプトから起動すると、tomcatが起動しない。 java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory というエラーが発生している。[原因] jsvcの起動スクリプトをtomcat6前提のものをぱちってきていた。 その為、tomca…

P185 でんぷん含有量と文明発展の関連性と育てやすさ

でんぷん含有量と文明発展の関連性は多いに関係がある。 それは少ない労働力で多くの人を養える。 また、労働力が余ることであり、余剰労働力を別の事に費やせることを意味するからである。米はでんぷん含有量が多いが育てにくい。 逆に小麦は育てやすいが少…

P60 設計ドキュメント

グーグルのすべてのプロジェクトは、基本設計ドキュメントを持っている。 大きなプロジェクトでは、サブシステムのために小さな設計ドキュメントを作って、それらを結びつける。テストから見えてくるグーグルのソフトウェア開発作者: ジェームズ A ウィテカ…

P30 テスト≠品質

品質はテストではない。 品質は、開発とテストを互いに区別できなくなるまでイテレーションしていく中で実現される。 グーグルが少数のテスターでやっていけるのは、開発者がオーナーとして品質に対して責任を追っているからである。 社外に製品がリリースさ…

スピアフィッシングとホエーリング

[スピアフィッシング] フィッシングの中でも、少数のユーザーを標的とするフィッシングを指す。[ホエーリング] スピアフィッシングに関連して作成された用語で、知名度の高い人物や上級幹部を標的にするフィッシングを指す。セキュリティエンジニアの教科書…

P91 HTTP日付

RFC822、RFC850、ANSI Cであり、RFC3339は含まれていない。 実際には独自に定義したHTTPヘッダに定義外フォーマットの時間を入れている事は多いが、Dateや Expiresなど標準ヘッダで使う場合は注意しなければならない。 Web API: The Good Parts 作者: 水野貴…

P90 エポック秒

いわゆるUNIX秒 1970年1月1日0時0分0秒(UTC )からの経過時間を秒数で表したもの Web API: The Good Parts 作者: 水野貴明 出版社/メーカー: オライリージャパン 発売日: 2014/11/21 メディア: 大型本 この商品を含むブログ (7件) を見る

P83 JSONインジェクション

script要素を利用してJSONを読むことによって、ブラウザに 他のサービスのAPIが提供するJSONファイルを読み込ませ、その内容を不正に入手する手法 Web API: The Good Parts 作者: 水野貴明 出版社/メーカー: オライリージャパン 発売日: 2014/11/21 メディア…

P89 sexとgender

sexは生物学的な性別を表し、genderは社会的・文化的性別を 表す。 なお、Facebookでは、2014年2月に50種類以上の性別を入力できるようにした。 [独自調査内容] sexはISO5218に定義されている。 genderに関する国際的な定義は現時点ではなさそう(WHOが定義…

P76 Chatty API

おしゃべりAPI ネットワークの トラフィックを増加させ、クライアントの処理の手間を増やし、なんだか面倒くさい仕様という印象を抱かせる。 出来るだけAPIのアクセス回数が減るようにし、どの様に使われるかをしっかり想像して、使いやすいAPIを設計 するこ…

P86 JSONの項目名の命名規則

JSONではキャメルケースを利用した方が良い。理由としては、JavaScriptの命名規約においてキャメルケースの利用をルール付けしているケースが多いため。 とはいえ、Twitter,Facebook,Instgramなどスネークケースを用いているAPIも多い。 一番重要なのは、API…

MyBatisからTomcatのJNDIへ接続ができない

[事象] Tomcatのserver.xmlと、WAR側のweb.xmlにJNDI登録に関する記述を行った。 その後、MyBatisの定義ファイルにJNDIをデータソースとして接続しようとしたが失敗する。[原因] ・WARにJDBCのJARを突っ込んでいたので、Tomcat側でJARを認識できていなかった…