PlayFramework2.7のファイル送信フォームで10MB以上を送るとHttpStatus 413「Request Entity Too Large」が出る原因はデフォルトの上限値。application.confのplay.http.parser.maxDiskBufferを変更して広げます♪ TypeScriptでconsole.errorなどを使うと出る「Calls to 'console.error' are not allowed.」の警告は、tslint.jsonのrulesに1行追加するだけで消せます。ログ出力にconsoleを使いたいときの解決方法です♪ Node.jsのnpmモジュール「sitemap-generator」でサイトをクロールしてsitemap.xmlを自動生成する方法。インストールから実行、出力先の指定やlastmodの追加などのオプションまでまとめました♪
Vue-CLI 3系のQuasarでFontAwesomeやMDIのアイコンが表示されない原因は、導入時に選んだアイコンセットしか読み込まれないため。quasar.tsの設定に追記して後から有効にする方法です♪ Vuexのプロジェクトに「vuex-i18n」で多言語対応を導入する方法。インストール、英語と日本語のメッセージファイルの用意、storeへのデフォルト言語設定、i18n.tsの作成、template側の実装、プルダウンでの動的切り替えまで♪ Java8のStream APIでListをMapにするとHashMapになって順序が保証されない問題の解決方法。Collectors.toMapの引数にLinkedHashMap::newを渡せば元の並び順を保てます。TreeMapではダメな理由も♪
Hibernate5でDBのスネークケースのカラムをEntityのキャメルケースのフィールドに自動でマッピングする方法。廃止されたImprovedNamingStrategyの代わりにPhysicalNamingStrategyStandardImplを継承して設定します♪ TypeScriptで依存ライブラリ側のstreamやBufferなどNode.jsコアモジュールのエラーが出るときは、tsconfig.jsonのcompilerOptions.typesに「node」を1行追加するだけで解決します♪ ヘッドレスブラウザPhantomJSのラッパー「NightmareJS」で大量の画面キャプチャを自動保存する方法。インストールからスクリーンショット保存、複数画面の一括キャプチャ、レスポンシブ、スクロール領域の全体キャプチャまで♪ TypeScriptでcanvasのtoDataURLを使うと出る「Property 'toDataURL' does not exist on type 'HTMLElement'.」の原因と対処法。取得したcanvas要素の型をasでキャストするか、ジェネリックで明示的に指定すれば解決します♪