« サーバの REST 化に挑戦 〜 まずは OS X で WildFly 8.2.1 を起動する | トップページ | 依存性:REST(3) »

2015年2月20日 (金)

NetBeans でパッケージ作成:REST(2)

クライアント

  • 新規プロジェクト > Maven > Java アプリケーション
  • プロジェクト名: client
  • プロジェクトの場所: /path/to/opendolphin-1.3.0.10
  • グループ:jp.motomachi-hifuka
  • バージョン:1.3.0.10
  • パッケージ:open.dolphin.client
    パッケージができてから,右クリックでプロパティーを設定
  • アーティファクトID:open.dolphin.client
  • 名前:client
  • ソース/バイナリ形式:1.7
  • コンパイル:Javaプラットフォーム: JDK 1.7

サーバ

  • 新規プロジェクト > Maven > Web アプリケーション
  • プロジェクト名: server
  • プロジェクトの場所: /path/to/opendolphin-1.3.0.10
  • グループ:open.dolphin
  • バージョン:1.3.0.10
  • パッケージ:jp.motomachi-hifuka
  • サーバー:WildFly アプリケーションサーバ
  • Java EE バージョン:Java EE 7 Web
    できてから,プロパティーを設定。
  • アーティファクトID:open.dolphin.server
  • 名前:server
  • ソース/バイナリ形式:1.7
  • コンパイル Javaプラットフォーム: JDK 1.7
    (NetBeans を再起動しないと Java依存性が 1.7 にならないことがあった)
  • コンテキスト・パス: /dolphin
    コンテキスト・パスの設定により WEB-INF/jboss-web.xml の context-root が作成される
  • 「実行時にブラウザを表示」のチェックボックスを外す
  • web.xml 作成
    server 右クリック > 新規 > その他をクリック > Web > 標準のデプロイメントディスクリプタ
  • Application クラス作成
    server 右クリック > 新規 > Java ファイル > open.dolphin パッケージ
    Application を extend した DolphinApp.java を作る
    package open.dolphin;
    
    import javax.ws.rs.ApplicationPath;
    import javax.ws.rs.core.Application;
    
    @ApplicationPath("/")
    public class Dolphin extends Application {}
    
    REST ではサーバに http でアクセスするが,http://hostname:8080/context-root/ApplicationPath/xxx という URL になる。つまり,以上の設定で http://localhost:8080/dolphin/xxxx というふうにアクセスできるようになる

持続性ユニット作成

  • server 右クリック > 新規 > 持続性ユニット
  • 持続性ユニット名: DolphinPU
  • 永続性プロバイダ:Hibernate (JPA 2.1)
  • データソース:DolphinDS
  • Java Transaction API:使用する
  • 表作成戦略:なし
    デフォルトの create だと,2回目の実行時に org.postgresql.util.PSQLException: ERROR: relation "d_facility" already exists が出て,deploy に失敗する。
  • 以下のプロパティーを追加
    <property name="hibernate.id.new_generator_mappings" value="false"/>
    <property name="hibernate.hbm2ddl.auto" value="update"/>
    <!-- hibernate search -->
    <property name="hibernate.search.default.directory_provider" value="filesystem"/>
    <property name="hibernate.search.default.indexBase" value="/var/lucene/indexes"/>
    

« サーバの REST 化に挑戦 〜 まずは OS X で WildFly 8.2.1 を起動する | トップページ | 依存性:REST(3) »

OpenDolphin」カテゴリの記事