去年と今年と

もう年が明けて5日になってしまいましたが、去年の総括と今年についてつらつらと。 12月末日で今の会社に入ってからちょうど5年が経ちました。 社会人生活に入ってからここまで長く勤めた会社ってのは初めてなので、 まあ、今までで一番合っている会社なんだ…

Oracle DBがWindowsの再起動時に自動で立ち上がらなくなった場合

Oracle DBをサービスとして登録してあり自動で起動するように設定されていて、TNSリスナーは自動で立ち上がるのにOracle DBに接続できない場合があります。 データベースを再作成した時にそうなることがあるのですが、そちらについての確認方法と対処方法を…

特定の文字がWindows-31J(Shift_JIS)で扱えるかどうかをJavaで確認する。

現時点では、以下のコードが一番よさそう。 private static final Charset windows31J = Charset.forName("Windows-31J"); public boolean canEncodeWithWindows31J(CharSequence str) { CharsetEncoder encoder = windows31J.newEncoder(); return encoder.…

Hitachi Cosminexusの新規採用は止めましょう。

Java EE(Jakarta EE)の仕様検討ワーキンググループへの参加を止めてしまい、最新仕様への追従も数年前から止めてしまっているようなので、導入するのは止めましょう。 仮に導入しても、レガシーAPIしか使用できず、生産性の向上は望めません。 Java EE(Jakar…

WindowsでOracle 18c XEのインストール時に管理者権限があるのに管理者権限がないと怒られて失敗する場合

ドメインに参加しているWindowsでドメインユーザーを使用してOracle 18c XEをインストールしようとすると、管理者権限がついていたとしても管理者権限がないといわれて怒られる。 その場合、同名のローカルユーザーを作って管理者権限を付けてあげると、ドメ…

Servlet APIとJPA APIの日本語翻訳を独自ドメインに移動させました。

タイトルのとおり。 古いページにアクセスしても自動でリダイレクトされるはずですが、ご連絡として。 中身はgithub pagesのままで何も変わってないです。 https://github.megascus.dev/ よくある質問と答え なんでドメインを移動させたんですか? github pa…

Oracle DBのPL/SQLからOffice365(starttls)を利用してメールを送信する

君がこれを読んでいるということは非常につらい状態に置かれているということだろう。 公式ドキュメント通りにやっても動かないという人向けに記す。 以下についてはきちんと読みましょう。 docs.microsoft.com https://support.microsoft.com/ja-jp/help/44…

株式会社はてなに入社しました

株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記

正規表現で空白をマッチさせるときは\sじゃなくて\hのほうが良いのかもしれない。

正規表現で空白文字とマッチさせるときは\sを使用することが多いと思いますが、本当に求めているものは\hなのかもしれません。 \s 空白文字: [\t\n\x0B\f\r] \h 水平方向の空白文字: [ \t\xA0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000] \sはasciiで定義…

SQLExceptionをハンドリングしなくてもよくなるJDBCドライバ

DB障害時にもJDBCから例外返すなと言われるとねぇ— いとうちひろ(Chihiro Ito) (@chiroito) February 7, 2019 そういえば、log4jdbcみたいにラップしてあげれば実装できるよねーということに気が付いたので、実装してみました。 github.com なんと!SQLExcep…

Tomcatのログの保持日数がTomcat 9から90日になっていた。

題名のとおり。 ついでに、Tomcat-9.0.13からはログの出力文字がUTF-8に変更されました。 よって、現状は以下のような感じになっています。 ※conf/logging.propertiesから抜粋 ※下2行が増えた。 1catalina.org.apache.juli.AsyncFileHandler.level = FINE 1c…

Oracle DBのjdbcドライバをmavenから利用する。

日本語情報だと、どこからか取ってきたjdbcドライバを自前でローカルリポジトリにインストールしろという記事しか見つからなかったので。 Oracle社はOracle DB用のjdbcドライバを自前のmavenリポジトリでリリースしており、そちらから取得する設定を行うこと…

JavaのAPIを使用して証明書にアクセスする(keytoolは使用せずに)

証明書の期限切れが世の中をにぎわせている今、プログラムから証明書の期限を取得してAPIとして期限切れかどうかをチェックできるものがあるといいよなぁと思い、Javaから証明書にアクセスする方法を調べてみました。 証明書の自動更新とかの実装例を見てる…

AWS RDSでOracle DB 12cに当たってるパッチセットを確認する。

twitterで @ktz_alias さんに教えてもらったとおりですが。 www.dba-oracle.com DBMS_QOPATCH 以下でパッチセットが取れます。 select dbms_qopatch.GET_OPATCH_LIST from dual; 以下でパッチの当たったバグの一覧が取れます。(上にも含まれている情報です) …

Tomcatのリモートデプロイが2017年からずっと失敗している件

いまだにAntでTomcatのリモートデプロイをしているのですが、ここ最近のバージョンだとずっと動いていなかったようです。 Antの中身で呼ばれているクラスを実行するとエラーになります。 DeployTask deployer = new DeployTask(); deployer.setUpdate(true);…

IPAの非機能要求グレードを使ってみた。

2018年4月25日に更新されて、話題になっていたので。 実は、この非機能要求グレードという資料については私は最近まで全く知りませんでした。https://www.ipa.go.jp/sec/softwareengineering/reports/20100416.html 非機能要求とは そもそも頭に"非"が付いて…

Microsoftのドキュメントの誤訳を報告したら炎上した件について(当事者目線での話)

この件について改善がなされるとの発表がMicrosoft DOCS International Teamからありました。 少なくとも、誤訳の報告についてはやりやすくなるそうです。 ご担当者様及びに尽力してくださった方々には感謝いたします。 https://github.com/dotnet/docs.ja-j…

Eclipse Photonからテストフォルダを分離できるようになりました。

ということで試してみました。以下のようにテストフォルダはグレーアウトされて表示されます。 テストフォルダであるかどうかは「Java Build Path」の「Contains test sources」の値をtrueにすることで指定できます。 mavenの場合はtest配下のフォルダは自動…

Javaのスレッドで発生したキャッチされてない例外をログに出力する

概要 Thread#setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler) を呼び出すことでアプリケーション全体のログ設定を変更することができる。 上の設定をThreadGroupで上書きすることができる。ただし、ThreadGroup自体がUncaughtExceptio…

JPA 2.2のJavaDocを日本語に翻訳した

ガクッhttps://megascus.github.io/jpa-spec/docs/apidocs/

Oracleにjdbcで接続したときのタイムゾーンの設定

以下のような感じらしい。デフォルトではクライアントのユーザーが使用しているタイムゾーンが使用される。=システム環境変数(user.timezone)の値 システム環境変数で指定されているため、実行時のオプションで上書きすることが出来る java -jar XXXX.jar -…

Tomcatのバージョンごとのweb.xmlのヘッダー

それぞれバージョンがあってないと一部使用できない機能があるので注意。 ※metadata-completeのデフォルト値はfalseで、trueの場合はウェブアプリケーションに関係するアノテーションが読み込まれない。 Tomcat 10.1

JenkinsのGitプラグインで更新チェックに複数のブランチが引っかかった場合

JenkinsのGitプラグインで更新チェックに複数のブランチが引っかかった場合は複数のブランチに対してそれぞれビルドが走る。ひとつのビルドタスクに以下のような記述が出て、他のはそれに引きずられてビルドされる感じ。 Multiple candidate revisions Sched…

株式会社はてなに入社しました

株式会社はてなに入社しました株式会社はてなに入社しました - hitode909の日記

Java EE 8がそろそろ固まってきたのでJPA 2.2のJavaDocを日本語に翻訳し始めた(2/3完了)

タイトルの通りですが、Java EE 8準拠のJPA 2.2のJavaDocを日本語訳に翻訳し始めてみました。 サブパッケージを残して翻訳できたので変な場所があったら指摘をお願いします。用語類は結構不安だったので、アンケート取ったけど、まあ、こんな感じなのかなぁ…

日本語でのJavaDocの書き方

JavaDocを何で書くの?とか、書き方とかをまとめたページはたくさんありますが、日本語特有の情報が抜け落ちていたり、英語でのJavaDocの書き方を説明するものばかりなので、日本語特有の情報をいくつか書きたいと思います。なお、JDK 8u144あたりでの挙動で…

Java EE 8がそろそろ固まってきたのでservlet-spec 4.0のJavaDocを日本語に翻訳した

ということで、完了しました。 成果物は以下からどうぞ。https://megascus.github.io/servlet-spec/docs/apidocs/今まで英語を読むだけならできると思ってたけどぜんぜん読めてなかったんだなぁという。。。。 ちょっと休んだらもういくつかを勉強もかねて翻…

Windows上のVSCodeのLanguage Support for JavaでJavaDocを見たときに文字化けする

VSCodeのLanguage Support for JavaでJavaDocを参照しようとしたときに文字化けすることがあります。 ファイルのエンコードがUTF-8で書かれている場合などです。WindowsではデフォルトのファイルのエンコーディングがWindows-31Jですが、Language Support fo…

Java EE 8がそろそろ固まってきたのでservlet-spec 4.0のJavaDocを日本語に翻訳し始めた(現在半分完了)

タイトルの通りですが、Java EE 8準拠のservlet-spec 4.0のJavaDocを日本語訳に翻訳し始めてみました。 どうにか半分を越したのでとりあえず公開。 ちまちまやって来月中ぐらいには全部翻訳できそうな感じ。https://megascus.github.io/servlet-spec/docs/ap…

githubで雑にビルド後の成果物を配る

githubではgithub pagesという機能を使ってウェブサイトを公開することができる。 travis-ciというサービスでは無償でビルドを行いgithub pagesにpushをすることができる。ということで。 github pagesとしての公開の仕方は以下からproject siteを選ぶことで…