Web系開発メモ

Java, JavaScript, CSS, HTML などの記事を書いています。

ServletRequestListener:リクエストの前後処理

ServletRequestListener を使うと、サーブレット(or フィルタ)の処理前後に通知を受けることができます。 前提 記事内のコードを実行するには、サーブレットの動作環境(コンテナ)が必要になります。環境がない場合は、下の記事などを参照して頂けると嬉…

Servlet:リクエストパラメーターの取得

Java のサーブレットで、リクエストパラメータを取得する方法を書いてみます。 前提 記事内のコードを実行する場合、サーブレットの動作環境(コンテナ)が必要になります。環境がない場合は、下の記事などを参照して頂けると嬉しいです。 Servlet:動作環境…

ServletContextListener:起動時の処理追加

ServletContextListener を使って、サーブレットアプリの起動時(初期化時)に処理を追加する方法をまとめてみました。 前提 記事内のコードを実行するには、サーブレットの動作環境(コンテナ)が必要になります。環境がない場合は、下の記事などを参照して…

HttpSessionListener:実行タイミング

セッションタイムアウトの時間が経過したタイミングで、HttpSessionListener のメソッド #sessionDestroyed(HttpSessionEvent) が実行されるか確認してみました。 結果 セッションタイムアウトの時間が経過したタイミングでは実行されない。 タイムアウト後…

Servlet API:資料(仕様書・Javadoc等)

Servlet の調査や勉強で参照する資料のリンクをまとめてみました。 Servlet 3.1 Specification - Final Release Javadoc - Tomcat 8.5.x Servlet 4.0 Specification - JSR369(※要ダウンロード) Javadoc - Tomcat 9 Servlet 3.0 日本語訳仕様書 - 株式会社…

Maven:test配下のMainクラス実行

Maven プロジェクトで、src/test/java 配下のプログラム(main メソッドを持つクラス)を実行する方法を書いていきます。プログラムの実行には、Exec Maven Plugin を使います。 1. 実行コマンド コマンドの例は以下の通りです。 $ mvn exec:java -Dexec.mai…

Maven:Java プログラムの実行

Maven プロジェクトの Java プログラム(main メソッドを持つクラス)を、Exec Maven Plugin で実行する方法を書いていきます。 今回は pom.xml にプラグインを定義せず、コマンドラインからクラス名や引数などを渡して実行してみます。 1. 実行コマンド プ…

Maven:warの作成

Maven の War Plugin を使って、war を作成する方法を書いていきます。 1. pom.xml の作成 pom.xml を作成して、packaging タグの値を war にします。 <groupId>com.github.mamorum</groupId> <artifactId>kaze-sample-war</artifactId> <version>0.2.3</version> <packaging>war</packaging> war にすると War Plugin でパッケージングしてくれます…

Servlet API:記事の一覧

Servlet API に関連する記事をいくつか書いたので、そのリンクをまとめてみました。 資料・環境 仕様書・Javadoc等 動作環境構築(Jetty Maven Plugin) HttpServlet(サーブレット) リクエストパラメーターの取得 HTMLを返す JSONを返す Event Listener(…

Servlet API:動作環境構築(Jetty Maven Plugin)

Jetty の Maven Plugin を使って、サーブレットを動作させる環境を作ってみます。 手順1. プロジェクトの作成 ディレクトリ階層はこんな感じで作成します。ルートディレクトリは例として ssjp にしています。 ssjp/ - pom.xml - src/ - main/ - java/ - weba…

Jetty:記事の一覧

Jetty に関連する記事をいくつか書いたので、そのリンクをまとめてみました。 1. 組込Jetty(Embedded Jetty) HelloWorldの表示 静的コンテンツを返す Servletを動かす 2. その他 localhostだと遅い

老子:道徳経48

老子の道徳経下編四十八の一部をメモっておきます。 為学日益 為道日損 損之又損 以至於無為 無為而無不為 学を為(な)せば日々に益(ま)し 道を為(な)せば日々に損(そん)ず 之(これ)を損じて又(ま)た損じ 以(もっ)て無為に至る 無為にして為さざるはなし

Servlet:URLパターンと静的コンテンツ

Servlet のURLパターンと静的コンテンツのパスが同じ場合、どちらのコンテンツが返ってくるか確認してみました。 1. 結果 Servlet 3.1 の場合、Servlet のコンテンツが返ってきました。URL がかぶった場合、サーブレットの処理が優先されるみたいです。 2. …

Windows:cURL のインストール

OS

curl は、色んなプロトコルでデータをやりとりできるツールです。今回は、curl を Windows 7(64bit)にインストールする手順を書きます。 Win10 について(2017.07.27 追記) Windows 10(64bit)も、同じインストール手順で大丈夫そうでした。自分がインス…

Windows:git の curl を使う

OS

Windows に GitHub Desktop などをインストールしている場合、Git Shell で curl を使うことができました。今回は、その手順を書いていきます。 注意点(2017.07.27 追記) Git Shell の curl だと、コマンドのオプションが使えなかったりしました。Windows …

Jetty:localhostだと遅い

Windows10 のブラウザから、ローカルの Jetty(localhost:8080)に接続すると時間がかかることがありました。そのときの設定内容などをまとめていこうと思います。 ※ このとき使っていた Jetty のバージョンは 9.4.6.v20170531 です。 設定内容 Jetty の Ser…

Servlet:JSONを返す

Java のサーブレットで、JSON を返す方法を書いてみます。JSON 文字列の生成には Gson を使いました。 前提 記事内のコードを実行する場合、サーブレットの動作環境(コンテナ)が必要になります。環境がない場合は、下の記事などを参照して頂けると嬉しいで…

Servlet:HTMLを返す

Java のサーブレットで、HTML を返す方法を書いてみます。 前提 記事内のコードを実行する場合、サーブレットの動作環境(コンテナ)が必要になります。環境がない場合は、下の記事などを参照して頂けると嬉しいです。 Servlet:動作環境構築(Jetty Maven P…

組込Jetty:Servletを動かす

組み込み Jetty(9.4.6)を使って、Java のサーブレット(spec 3.1)を動作させる環境をつくってみました。 手順1. プロジェクトの作成 プロジェクトのルートディレクトリ ssej の下に、以下の pom.xml を作成します。 ssej/pom.xml

MuseScore:ドレミ自動採譜

MuseScore で作成した楽譜に、尺八用プラグイン を使ってドレミを自動採譜する方法を書いていきます。 1. 尺八用プラグインのインストール 1.1. プラグインのダウンロード 尺八用プラグインのサイト で公開されている Shakuhachi_Notation_v2_02.qml を、C:\…

組込Jetty:静的コンテンツを返す

Embedded Jetty(組み込み Jetty)で、Http リクエストに対して静的コンテンツを返す例を書いていきます。 手順1. pom.xml の作成 jetty-server を使う Maven プロジェクトとして作成します。

組込Jetty:HelloWorldの表示

Embedded Jetty(組み込み Jetty)で、Http リクエストに対して Hello World を返す例を書いていきます。 手順1. Jar のダウンロード jetty-all.jar を、こちら からダウンロードします。 自分がダウンロードしたときは jetty-all-9.4.6.v20170531-uber.jar …

Poml開発:2017年07月07日

Poml の新しいバージョン v1.0.0 をリリースしました。 変更点 relativePath を parent に追加しました。 parent=com.example:demo-parent:0.0.1:../pom.xml 上の poml は、下の xml に変換されます。 <parent> <groupId>com.example</groupId> <artifactId>demo-parent</artifactId> <version>0.0.1</version> <relativePath>../pom.xml</relativePath> </parent> バージョ…

Ubuntu:nkfのインストール

OS

Ubuntu に nkf をインストールする方法を書いていきます。nkf を使うと文字コードを変換したり、改行コードを変換したりできます。 インストールの動作確認は、Vagrant Box の ubuntu/trusty64 で行っています。 手順1. apt-get の実行 以下のコマンドでイン…

Ubuntu:zip・unzipのインストール

OS

Ubuntu に zip と unzip をインストールする方法を書いていきます。動作確認は、Vagrant Box の ubuntu/trusty64 で行っています。 手順1. apt-get の実行 以下のコマンドでインストールします。 $ sudo apt-get install zip unzip 手順2. 確認 オプション -…

Maven:Ubuntu14にインストール

Maven 3.5.0 を、Ubuntu 14.04 LTS(Trusty Tahr)にインストールする手順を書いていきます。動作確認は、Vagrant Box の ubuntu/trusty64 で行っています。 前提 JDK をインストール していることが前提となります。 手順1. ダウンロード 事前に root にな…

老子:道徳経19

老子の道徳経上編十九の一部分をメモっておきます。 見素抱樸 少私寡欲 絶学無憂 素を見(あら)わし樸(ぼく)を抱け 私を少なくし欲を寡(すく)なくせよ 学を絶ちて憂いを無くせ

BenQモニタ:信号なし青画面回避(HDMI)

etc

BenQ の液晶ディスプレイ RL2460 を使っていて、HDMI の信号がなくなると明るい青画面が表示されました。 ちょっと刺激が強いので、明るい青画面を回避する方法を書いていきます。 手順1. HDMI自動切換の設定 画面が表示されている(HDMIなどの信号あり)状…

老子:道徳経23

老子の道徳経上編二十三の一部分をメモっておきます。 少則得、多則惑 少則得、多則惑 少なければ則(すなわ)ち得られ、 多ければ則(すなわ)ち惑う。 不自… 不自見故明 不自是故彰 不自伐故有功 不自矜故長 自ら見(あら)わさず、故に明らか 自ら是(よし)とせ…

Maven:記事の一覧

この記事には、Maven の記事(リンク)を一覧形式でまとめています。 インストール Win10にインストール Win7にインストール CentOSにインストール Ubuntu14にインストール 入門 1.プロジェクトの作成と実行 2.エンコーディングとコンパイラの設定 3.Eclipse…

Maven:fatjarの作成

Maven の Assembly Plugin を使って、fatjar を作成する方法を書いていきます。 手順1. プロジェクトの作成 プロジェクトのルートディレクトリ(例:fjs)を作成して、その下に pom.xml を用意します。 fjs/pom.xml

Ubuntu:gitのインストール

OS

Ubuntu に git をインストールして、個人の識別情報(ユーザ名とメールアドレス)を設定する方法を書いていきます。動作確認は、Vagrant Box の ubuntu/trusty64 で行っています。 手順1. apt-get の実行 Git - Download for Linux and Unix に書かれている…

Maven入門:5.フェイズについて

Maven のビルドには「ライフサイクル(Build Lifecycle)」という概念があって、ライフサイクルにはいくつかの「フェイズ( Phase)」があります。 ライフサイクル Maven には3つのライフサイクルが組み込まれているようです。 default: プロジェクトのビル…

Maven入門:4.依存性の追加

Maven の pom.xml を編集して、依存性(jar)を追加してみようと思います。依存性を追加すると、Maven のビルドで jar がクラスパスに追加されます。 今回は例として、ログ関連の jar(slf4j-api, logback-classic)を追加してみます。 手順1. pom.xml の編…

Maven入門:3.Eclipseにインポート

前回の記事「2.エンコーディングとコンパイラの設定」で作成したプロジェクトを Eclipse にインポートして(取り込んで)みます。 補足 Eclipse のインストール方法などは、こちら に掲載しています。Eclipse を利用していない場合などは、読み飛ばして頂い…

Maven入門:2.エンコーディングとコンパイラの設定

前回の記事「1.プロジェクトの作成と実行」で作成した pom.xml を編集して、エンコーディングとコンパイラのバージョンを設定していきます。 補足 前回の mvn package コマンドを実行すると、以下のような警告が出ていました(Win環境)。 ・・・ [WARNING] …

Maven入門:1.プロジェクトの作成と実行

Maven でクイックスタート用のシンプルなプロジェクトを作成して、そのアプリを実行してみます。 前提 Maven をインストールしていることが前提となります。インストール記事のリンクは、以下の記事に掲載しています。 Maven:記事の一覧 手順1. プロジェク…

POML開発:2017年06月25日

POML の新しいバージョン v0.4.0 をリリースしました。 主な変更点 コマンドラインメッセージの改善 Poml ファイルのバリデーションをいくつか削除 &fatjar の更新 内部ロジック改善(パース、レンダリング) バリデーションは最小限のみ実装していくことに…

自転車:前輪ブレーキの交換

自転車の前輪ブレーキの音(キーキー音)がヒドイので、ブレーキパッドを交換することにしました。自転車は一般車(シティサイクル)で、交換前のパッドは「YSB-PSC-C」という型番でした。 補足 ブレーキパッドを交換する前に、前輪のリム(ホイールの外枠)…

Eclipse:インデントを空白に設定

Eclipse のエディタで、インデントを空白(半角スペース)に設定する方法を書いていきます。今回は、 Java の Formatter Text Editors XML Editor について書いています。 補足 この記事では、インデントのサイズは半角2つに設定しています。お好みで調整し…

JS:クロスドメインとiframe

JS

Webページ(JS)から、違うドメインの XML(RSS フィード)を取得したいことがありました。そこで、iframe で別ドメインの XML を取得して、その内容を操作できないか検証してみました。 検証結果 結果としては、エラーが発生して無理そうでした。 エラー内…

JS:クロスドメインとYQL

JS

Webアプリ(ブラウザ)のクロスドメイン問題と、その回避方法(1. レスポンスヘッダ、2. YQL(Yahoo Query Language) )をまとめていこうかと思います。 クロスドメイン問題とは? あるドメイン(aaa.com)のページから、別ドメイン(bbb.com)への接続がブ…

Eclipse:lombokインストール手順

Eclipse は、lombok をインストールしないと、lombok に関連するエラーが発生します。下の画像はその例で、lombok が生成しているはずの setter がないと言われています。 これから、Eclipse に lombok をインストールする手順を書いていきます。 手順1. lom…

SpringBoot:記事の一覧

この記事には、Spring Boot の記事のリンクをまとめています。 入門 基本的な使い方(Web層, DBアクセス, 等々)を書いています。 SpringBoot 入門:目次 アプリ開発 Webアプリをつくる方法を書いています。 SpringBoot アプリ開発:目次 上記以外(エラー対…

SublimeText2:設定(Preferences の Settings - User)

etc

Sublime Text 2 の自分用設定を、忘れないように書いていこうと思います。 今回の設定は「Setting - User」に保存しています。「Setting - User」は、メニューバーの Preferences で開くことができます。 設定内容 { "detect_slow_plugins": false, "ignored…

SublimeText2:パッケージのインストール

etc

SublimeText2 のパッケージインストール方法と、自分がインストールしているパッケージを書いていきます。 インストール方法 手順1. Package Control のインストール 事前に Package Control(パッケージコントロールのページ)の手順に従ってインストールし…

SpringBoot アプリ開発:目次

Spring Boot を使って、Webアプリをつくる記事を書いてみました。以下の目次順に読んで頂けると、画面とDBアクセスのあるアプリをつくることができます。 ※ アプリの詳細(機能や画面など)は「1.概要」に書いてあります。 目次 概要 環境準備 プロジェク…

SpringBoot アプリ開発:1.概要

記事「SpringBoot アプリ開発」で開発するアプリの概要を書いていきます。 機能 短いテキスト「つぶやき」の、作成・表示・更新・削除(CRUD)ができるアプリです。 画面(HTML, JS, CSS) つぶやきの CRUD ができるレスポンシブな画面を、Bootstrap, jQuery…

Eclipse:記事の一覧

この記事には、Eclipse の記事(リンク)を一覧形式でまとめています。 基本 Eclipseの概要 Win10にインストール Win7にインストール Javaのコンパイルと実行 設定 エンコーディング設定 Ctrl+Tabでエディタ切替え エディタのフォント変更 カラーテーマの変…

Eclipse:Ctrl+Tabでエディタ切替え

Ctrl + Tab で、Eclipse のエディタを切替える方法を書いていきます。 設定前に、プリファレンス(Preferences)を開いておきます。プリファレンスは、メニューバーの ウィンドウ(Window)から開くことができます。 手順1. コマンドのコピー Preferences で…