2015年8月16日日曜日

Java Web開発コーディング編 ステップ1 Hellow World

経緯とGoles

さてEclipseのインストール、WildFlyのインストールまで完了したら、いよいよプログラミングです。

今回は簡単なサーブレット、JSPプログラムを作っていこうと思いますが、せっかくなのでJava EE6で採用されたJAX-RSを利用して作成したいと思います。
また、今後のパッケージ追加が楽になるようにMavenプロジェクト化していきたいと思います。

JAX-RSのポイント


  1. 従来のサーブレットのようにWeb.xmlにURLマッピングの設定がアノテーションで可能となった。
  2. パラメータのバインドが簡単

ステップ1.動的Webプロジェクトを作成

File | New | Dynamic Web Prjectを選択します。

プロジェクトの初期設定を行っていきます。
Project name:プロジェクト名です。やる気が出るようにかっこいい名前をつけましょう
その他はそのままで、Next >をクリック

ソースを格納するパスと、ビルドしたクラスファイルなどを格納するフォルダを指定します。
ここでは、最終的にMavenプロジェクトにするので、src/main/javaにEdit...ボタンをクリックして変更してみたのですが、以下の画面のように変更できませんでした。
なんだか悔しいのですが、後で対処するとして、デフォルトのsrcのままNext>をクリックします。

次にContext rootを指定する画面ですが、WebページのURLのディレクトリになるので、こだわって名前をつけたほうが良いですが、練習なので、デフォルトのプロジェクト名と同じ設定のままFinishをクリックします。
気に入らなかった、ソースのディレクトリを変更します。
Project Explorerから作成したプロジェクトを選択して、右クリックから「Properties」をクリックします。
Propertiesから、「Java Build Path」を選択し、Sourceタブを選択します。
右中央にあるAdd Folderでsrc/main/javaを作成し、src/main/javaにチェックを入れてOKををクリック。

src/main/javaが追加されたのが確認できたら、OKをクリックする。
なぜか「ui WebContent」なんて変な名前になっているWebConetentもMaveにそって、src/main/webappに変更します。「ui WebContenet」フォルダをドラッグして、そのままsrc/mainしたに移動します。

そのまま、F2キーを押して名前をwebappに変更します。


Mavenプロジェクトにコンバートする。

プロジェクト右クリック | Configure | Convert to Maven Project
pom.xmlのDependenciesタブのDependenciesのAddボタンから以下の依存関係を追加する。


Group Id:org.jboss.spec.javax.ws.rs
Artifact Id:jboss-jaxrs-api_2.0_spec
Version:1.0.0.Final
Scope:proided

ちなみにpom.xmlの内容は以下のようになりました。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>HellowWorld</groupId>
  <artifactId>HellowWorld</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.3</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <failOnMissingWebXml>false</failOnMissingWebXml>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <dependencies>
   <dependency>
    <groupId>org.jboss.spec.javax.ws.rs</groupId>
    <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
    <version>1.0.0.Final</version>
    <scope>provided</scope>
   </dependency>
  </dependencies>
</project>





0 件のコメント:

コメントを投稿