かんがるーさんの日記

最近自分が興味をもったものを調べた時の手順等を書いています。今は Spring Boot をいじっています。

Spring Boot + npm + Geb で入力フォームを作ってテストする ( その3 )( Project の作成2 )

概要

記事一覧はこちらです。

Spring Boot + npm + Geb で入力フォームを作ってテストする ( その2 )( Project の作成 ) の続きです。

  • 今回の手順で確認できるのは以下の内容です。
    • Project の作成
    • 前回長くなったので2回に分けています。今回は前回からの続きです。

参照したサイト・書籍

  1. DBCP - validationQuery for different Databases
    https://stackoverflow.com/questions/10684244/dbcp-validationquery-for-different-databases

    • H2 Database の validationQuery を調べた時に参照しました。H2 Database 以外の validationQuery も記載されています。ほとんどの DB で select 1 なんですね。

目次

  1. ksbysample-webapp-lending からファイルをコピーする(その2)
  2. 「Spring Configuration Check」のメッセージが表示されないようにする
  3. Tomcat が起動することを確認する

手順

ksbysample-webapp-lending からファイルをコピーする(その2)

  1. ksbysample-webapp-lending から以下のファイルをコピーします。

    ※リンクのあるファイルはリンク先の内容に変更します。

    ■src/main/resources

  2. ファイルコピー後は以下のディレクトリ構成になります。

    f:id:ksby:20170722071222p:plain f:id:ksby:20170722071357p:plain

「Spring Configuration Check」のメッセージが表示されないようにする

  1. IntelliJ IDEA を再起動します。

  2. 画面右下に「Spring Configuration Check」のメッセージが表示されます。

    f:id:ksby:20170722072847p:plain

    下矢印ボタンを押してメッセージの全てを表示した後、「boot-npm-geb-sample_main」リンクをクリックします。

    f:id:ksby:20170722073021p:plain

  3. 「Project Structure」ダイアログが表示されます。「+」ボタンをクリックして下に表示されているファイルを追加します。

    f:id:ksby:20170722073405p:plain

  4. 「New Application Context」ダイアログが表示されます。以下の画像のファイルをチェックした後、「OK」ボタンをクリックします。

    f:id:ksby:20170722073637p:plain

  5. 「Project Structure」ダイアログに戻ると以下の画像のように表示されます。下の画像では下半分を表示していませんが、まだこの段階では警告メッセージは消えていません。

    f:id:ksby:20170722073829p:plain

  6. 再び IntelliJ IDEA を再起動して、画面右下に「Spring Configuration Check」のメッセージが表示されないことを確認します。この後「Project Structure」ダイアログを表示すると警告メッセージは消えていました。

Tomcat が起動することを確認する

  1. Gradle Tool Window から bootRun タスクを実行します。Tomcat が起動して “Started Application in …” のログが出力されることを確認します。

    f:id:ksby:20170722075704p:plain

  2. Tomcat を停止します。

ソースコード

application.properties

doma.dialect=org.seasar.doma.jdbc.dialect.H2Dialect

spring.datasource.tomcat.url=jdbc:h2:mem:bootnpmgebdb
spring.datasource.tomcat.username=sa
spring.datasource.tomcat.password=
spring.datasource.tomcat.driverClassName=org.h2.Driver
spring.datasource.tomcat.initialSize=1
spring.datasource.tomcat.maxActive=1
spring.datasource.tomcat.maxIdle=1
spring.datasource.tomcat.minIdle=1
spring.datasource.tomcat.testOnBorrow=true
spring.datasource.tomcat.validationQuery=select 1
spring.datasource.tomcat.validationQueryTimeout=5
spring.datasource.tomcat.removeAbandoned=true
spring.datasource.tomcat.removeAbandonedTimeout=30
spring.datasource.tomcat.jdbc-interceptors=SlowQueryReport(threshold=5000)
# spring.datasource.jmx-enabled は spring.datasource.tomcat.jmx-enabled と書かないこと。
# spring.datasource.tomcat.jmx-enabled だと機能しない。
spring.datasource.jmx-enabled=true

spring.session.store-type=hash_map

spring.freemarker.cache=true
spring.freemarker.settings.number_format=computer
spring.freemarker.charset=UTF-8
spring.freemarker.enabled=false
spring.freemarker.prefer-file-system-access=false

spring.thymeleaf.mode=HTML

logging.level.root=INFO
logging.level.org.seasar.doma=ERROR

application-develop.properties

spring.mail.host=localhost
spring.mail.port=25

# Spring MVC
logging.level.org.springframework.web=DEBUG
# log4jdbc-log4j2
logging.level.jdbc.sqlonly=DEBUG
logging.level.jdbc.sqltiming=INFO
logging.level.jdbc.audit=INFO
logging.level.jdbc.resultset=ERROR
logging.level.jdbc.resultsettable=ERROR
logging.level.jdbc.connection=DEBUG

application-product.properties

server.tomcat.basedir=C:/webapps/boot-npm-geb-sample
logging.file=${server.tomcat.basedir}/logs/boot-npm-geb-sample.log
slowquery.logging.file=${server.tomcat.basedir}/logs/slow-query.log

spring.autoconfigure.exclude=com.integralblue.log4jdbc.spring.Log4jdbcAutoConfiguration
spring.datasource.tomcat.initialSize=1
spring.datasource.tomcat.maxActive=1
spring.datasource.tomcat.maxIdle=1
spring.datasource.tomcat.minIdle=1

spring.mail.host=localhost
spring.mail.port=25

application-unittest.properties

spring.autoconfigure.exclude=com.integralblue.log4jdbc.spring.Log4jdbcAutoConfiguration

spring.mail.host=localhost
spring.mail.port=25

logging.level.root=OFF

applicationContext-develop.xml

    <aop:config>
        <aop:pointcut id="pointcutService" expression="execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..))"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcutService"/>
    </aop:config>
  • execution(* ksbysample.webapp.lending..*Service.*(..))execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..)) に変更します。

applicationContext-product.xml

    <aop:config>
        <aop:pointcut id="pointcutService" expression="execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..))"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcutService"/>
    </aop:config>
  • execution(* ksbysample.webapp.lending..*Service.*(..))execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..)) に変更します。

applicationContext-unittest.xml

    <aop:config>
        <aop:pointcut id="pointcutService" expression="execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..))"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcutService"/>
    </aop:config>
  • execution(* ksbysample.webapp.lending..*Service.*(..))execution(* ksbysample.webapp.bootnpmgeb..*Service.*(..)) に変更します。

messages_ja_JP.properties

  • 中は空にします。

履歴

2017/07/22
初版発行。