やはり, 通常のServlet をつくることとほぼかわらないですが, フォルダが少し違うので, どういう構成にすればよいのかメモを残しておきます。
・フォルダ構成の例
プロジェクトフォルダ
| - src : ソースファイル
|- war : プロジェクトのmainフォルダ
| |- css : スタイルシート(自分でつくる)
| |- img : image用(自分でつくる)
| |- js : javascript用(自分でつくる)
| |- index.jsp : 最初のアクセス用
| |- WEB-INF : サーブレットのWEB-INF
| |- lib : App Engine で利用するライブラリ(jar)
| |- appengine-web.xml : App Engine の設定ファイル
| |- logging.properties : ログレベルの設定ファイル
| |- web.xml : サーブレットの設定ファイル
| |- jspファイル : View用のjspファイル(自分でつくる)
|
|- META-INF
| | - jdconfig.xml : JDOの設定ファイル
|
|- log4j.properties : Logの設定
※ この構成が正しいわけではありません。
通常のTomcat プロジェクト(Servlet)と比べると, war というフォルダが間に入っています。
これは, プロジェクト作成時にデフォルトです。
war 直下は, URLを入れると, たとえば, http://localhost:8888/css/test.css というように, アクセスできます。
ページは, 最初にアクセスしてきた場合のみ, index.jsp にアクセス(web.xml の welcome で設定しておく) させておき, 残りは, 直接アクセスできない,
index.jsp は, /index という, servlet もしくは, Action へのリダイレクトを設定し, 何もできないようにしましょう。
ex) index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<% response.sendRedirect("/index"); %>
※/index という処理をおこなうためのリダイレクトをするだけ
web.xml のウェルカムファイルの設定とともに利用する
ex) web.xml
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
/index では, 何かしらの処理をして, /WEB-INF/ 以下のjsp にforward するプログラムを書けばよいと思います。
CSSファイル, JavaScript ファイル, リソース周り(画像など) は, 特に直接アクセスされても問題ない場合は, /WEB-INF 以下でよいと思います。
App Engine 以外のライブラリ(.jar)を利用する場合は, /WEB-INF/lib に入れて, Java の Build Path に追加します。
0 件のコメント:
コメントを投稿