Spring Bootの2.7系から3.1系へのバージョンアップ対応のハマりどころ

Spring Bootのバージョンアップに際して、一部ソースコード修正などの対応が必要になる部分が少なからずあります。私がハマったところベースでいくつか対応方法を説明していきたいと思います。 サポート期間が、2.7.xと3.0.xとでほとんど変わらないため、多くは3.1.x…
55 記事あります
Spring Bootのバージョンアップに際して、一部ソースコード修正などの対応が必要になる部分が少なからずあります。私がハマったところベースでいくつか対応方法を説明していきたいと思います。 サポート期間が、2.7.xと3.0.xとでほとんど変わらないため、多くは3.1.x…
Autify Advent Calendar の○日目の記事...として載せようとしましたが、準備をして いるうちにアドベントカレンダーが埋まってしまいました。しかしせっかく作ったので公開します。 AutifyのAPIを自動取得するGAS…
DockerのContainer(コンテナ)を終了させようとした時に「ERROR: error while removing network: network HOGE id FUGA has active endpoints.」や立ち上げ時に「ERROR: endpoint…
こんなSMSが来ました。Amazon…
AWS Elastic Compute Cloud (EC2)のインスタンス構築手順です。さすがクラウドサービスなだけあって、いくつかポチポチと入力していくだけで簡単に作成できます(起動していると課金されていくので注意)。 前提 AWS…
概要 コミュニケーションツールとして、多くの方のスマートフォンに導入されているであろうLINE。それに自動的に通知を送れる仕組みがあれば便利と思い作成したので公開します。 できること リマインダーのように特定の日時に通知を送る。 特定の曜日に通知を送る。 第…
はじめに 2019年末より、新型コロナウイルス(COVID-19)のパンデミックで世界中が大打撃を受けています。 この感染拡大を防ぐべく、エンジニアとして何かできることは無いかと思い、「分散コンピューティングにRaspberryPi…
最新の情報を探せず、大変苦労したのでここに残します。この先も使えるやりかたとなるように記載します。 やりたいこと Raspberry pi(Raspbian)上でseleniumを動かしたい。 そのために、ChromeのWeb…
kubernatis(以降k8s…
…
Dockerとは何か?を簡単にまとめました。これから始めてDockerを触る人向けにイメージをお伝えできればといったレベル感で書いています。 ちなみに、以下のチュートリアルは分かりやすくまとまっているので、Docker…
結論 表 題の記載方法は以下です。 説明 RUNDECKとはジョブスケジューラで、任意のジョブを定期的に実行するように管理できるソフトウエアです。「すごいcron…
すごく細かな話です。 AsciiDoc…
ちょっとしたWindowsバッチを作りましたのでご紹介します。 背景としてはasciidoctor…
私が思うWindows環境には必須の便利ツールをご紹介します。 Rapture 画面を切り取り、付箋のように全面に出し続けてくれるツールです。一部だけ表示しておきつつ作業がしたいなーというときにとても便利です。 Rapture使用イメージ https://www.vector…
gRPCとは、Googleが開発したRPC( Remote Procedure Call、遠隔手続き呼び出し)フレーム ワーク です。 gRPCについての日本語書籍はまだ中々少なかったのですが、2019年4月25日発売のWEB+DB PRESS(Vol.110)にgRPC…
第14章の実績 第14章 ユーザーをフォローする を実施しました! 実施時間: 5時間 学べたこと 多対多のリレーションシップ 多対多の関係を持つモデルの場合でもRailsでは簡単にリレーションシップを表現することができます。ただし、これまでの…
第13章の実績 第13章 ユーザーのマイクロポスト を実施しました! 実施時間: 4.5時間 学べたこと モデルの関連付け 「rails generate model Micropost content:text user:references」とするだけで、"Micropost…
第12章の実績 第12章 パスワードの再設定 を実施しました! 実施時間: 1.5時間 学べたこと 本章では特段新しいことはなかったです。 第11章 アカウントの有効化 と同じような内容で、復習に近いような内容でした。ただ、1…
第11章の実績 第11章 アカウントの有効化 を実施しました! 実施時間: 1.5時間 学べたこと メール送信機能 「rails generate mailer UserMailer account_activation password_reset…
第9章の実績 第9章 発展的なログイン機構 を実施しました! 実施時間: 1.5時間 学べたこと cookies.permanent.signed[:user_id] = user.id 上記コードは、「cookieに、永続的に(2…
第10章の実績 第10章 ユーザーの更新・表示・削除 を実施しました! 実施時間: 2時間 学べたこと before_action 例えば本章では、「before_action :logged_in_user, only: [:edit, :update]」とすることで、edit…
第8章の実績 第8章 基本的なログイン機構 を実施しました! 実施時間: 2時間 学べたこと rails routes…
第7章の実績 第7章 ユーザー登録 を実施しました! 実施時間: 4時間 学べたこと デバッグ情報の埋め込み ビルトインの"debug"メソッド 例えば<%= debug(params) if Rails.env.development? %>をerbに記載すれば、"params…
第6章の実績 第6章 ユーザーのモデルを作成する を実施しました! 実施時間: 3時間 学べたこと モデルの生成方法 「rails generate model User name:string email:string」とするだけで、"User"という"name…
第5章の実績 第5章 レイアウトを作成する を実施しました! 実施時間: 1.5時間 学べたこと 今回作成するアプリケーションのサードパーティ機能の使い方 チュートリアルを通じて作られるWebアプリケーションにおける、UIのフレームワークであるBootstrapやCSS…
第4章の実績 第4章 Rails風味のRuby を実施しました。 "風味"という表現がいまいちどういうことか分かりにくいのですが、要はRailsで使用する上で必要なRubyの記述方法を教えてくれる章となっていました。 実施時間: 1.5時間 学べたこと 静的ページの作成 Web…
乱暴に「catch (Exception e)」で全ての例外を捕捉して処理しようとしたらfindbugs…
問題点 これはテーブル生成時の問題で、Oracle データベースのパラメータである列長セマンティクス(NLS_LENGTH_SEMANTICS)を正しく設定しておかないと、意図した文字数のデータを挿入することができなくなる可能性があります。 特に、1文字≠…
Windows…
結論 最新のOfficeでは、旧来のブックの共有機能はいかなる方法でも 、もう使うことはできなくなっています。(2019/1/17 時点現在) したがって、新しい共有機能を用いる必要があります。 詳細説明 Office 2013以前などの旧来のバージョンでは、複数人でExcel…
表題の通り、アーティファクト(Maven)リポジトリであるSonatype NEXUSは、OracleのJava 8 Runtime Environment(JRE)が必要だそうです。 以下で公式にガイディングされている通り、OpenJDKでは動きません。 OpenJDK or…
事象 gitコマンド(例えば「git svn fetch」)を実行すると、ずっと応答が返ってこないという事が起こりました。 補足 タスクマネージャを見てみると、「perl.exe」なるタスクがgit…
CodeZineさんの記事で、AWSの超初歩的なサンプルが紹介されていたので、やってみました。こちら少し古い記事(2017/08)で、AWSの画面構成が結構変わっていたため現在版(2018/12)での紹介です。体感的にAWS…
Qiitaに記事を書きました: https://qiita.com/nisioka/items/91b4a915d16bf514ad40 内容はほぼ同一ですが、本記事ではJavaの切り替えのバッチ起動も紹介しています。 はじめに Oracle…
第3章の実績 第3章 ほぼ静的なページの作成 を実施しました! 実施時間: 3時間 学べたこと 静的ページの作成 Webページの基本が知れる内容でした。ブラウザからリクエストを受け取り、HTML…
事象 githubにpushしようとしたら以下のようなエラーが発生しました。ちなみにInteliJで操作しました。 Failed with error: unable to access 'https://github.com/nisioka…
事象 Sencha Ext JSというJavaScript…
曖昧なタイトルですが、使用しているSelenide/Spring Boot…
Raspberry Pi3のインストールに初っ端からハマりました。インストールが全然進まず、エラーメッセージも無くすぐに初期画面に戻り、無限ループを繰り返すしかなくなります。原因が気付きにくかったのでここに残しておきます。 環境 ハードウェア:Raspberry Pi…
oracle DBでは、権限テーブルをDBA_TAB_PRIVS(USER_TAB_PRIVSも同様)で確認できるが、バージョン11g→12cで列追加の変更があった。しかし、公式でそのことを明記しているのが見つからなかったため、ここに残します。 (愚痴。oracle…
背景 DBインスタンスのダンプを取得して移行を行ったのですが、なぜか無効なオブジェクトがいくつか発生してDBが上手く動かなくなってしまったためです。 原因究明はできていませんが、もし同様にDB…
Sencha Ext JSとは Sencha Ext JSはJava Scriptのフレームワークです。JS部品をコンポーネント化して簡単にUIリッチな画面を作成することができます。 ここではこのJS…
ここでは、Oracle DBのセッションを強制終了する手順を説明します。 強制終了しなければならない状況は色々とあるとは思いますが、以下のエラーが発生した場合なんかもそうかと思います。 ORA-12516: TNS…
第2章の実績 第2章 Toyアプリケーション を実施しました! 実施時間: 1.5時間 学べたこと 簡単にRESTアプリケーションの作成方法 scaffold…
はじめに Ruby on Rails チュートリアル 実例を使ってRailsを学ぼう がとても良くできているので、ここに紹介します。私自身はruby…
第1章の実績 第1章 ゼロからデプロイまで を実施しました! 実施時間: 2時間(色々と余計なことをしての時間なので、普通はここまでかからないはず。詳細は後述) 学べたこと Webアプリケーションの仕組み(の基礎的なイメージ) 開発環境の構築方法(Croud…
事象 Spring-Bootというフレームワークを用いてWebアプリケーションを作成し、ブラウザからアクセスすると、内部で以下の例外が発生しました。 RequestRejectedException: The request was rejected because the…
はじめに GitHubにあるコードをブログで紹介したい時にgist-itという便利なサービスがあります。なのですが、ブログに貼り付けても上手く表示されなくてハマったので、注意点も交えつつ紹介したいと思います。 gist-itとは そもそもgist-it…
事象 Javaを実行時に以下のような例外(Exception)が発生する場合があります。 java.lang.ClassNotFoundException: javax.xml.bind.JAXBException java.lang.NoClassDefFoundError…
Javaのバージョンを一時的に変えたいというニーズがあると思います。私も、普段はJava8で開発していて、たまに少し動作確認のためにJShell([note]Java9以降の機能。コマンドライン上でJavaを実行することができ、簡単な確認がすごくしやすい。[/note…
Qiitaに記事を書きました。 org.springframework.context.MessageSource.getMessage()でデフォルトメッセージの思わぬ挙動 spring-boot…
ーはじめにー JavaでSSL通信を行う実装をしていて、タイトルの通り、「java.net.SocketException: Connection reset」が発生。例外情報が少なすぎて原因が全く分からず、大ハマリしました。。 【環境】 Java:version 1.8.…
Qiitaに記事を書きました。 仕事で色々試行錯誤した結果をまとめてありますが、だいぶニッチなものなので必 要としている人は限られそうです。^^; "Spring Boot" + "EXT JS"を使用したRESTアプリにおけるCSRF対策方針と実装例
…




























