DoltengがWTP対応プロジェクトを吐けるようになったのは良いのだが…。

一つだけ、不具合があります。気づいてはいたのですが、対処方法が見つかっていなかったので伏せてました(伏せるな)。
なんつーか…、プロジェクトを吐いたまんまでは動かない…んです。

えっと、対処方法は結構簡単でした。src/main/webapp/view が「ソースフォルダ」として設定されていますが、これをソースフォルダから外してしまう。そうすれば期待通りに動くはずです。

もともとviewフォルダがソースフォルダ指定されているのは、src/main/java あたりと並列に、上の方に表示されていると分かりやすいしアクセスしやすいよね? という意図(のハズです。間違ってたらご指摘ください)。そもそもjavaソースも置いていないのでコンパイルされる必要もない。多少使いづらくなるけれど、致命的な害はありませんまだ未知数無いなんて言い切っちゃいけないなw

というわけで、まだリリースはされていませんが SuperAgile(Teeda+S2Dao) with WTP プロジェクトを生成したら、とりあえずviewフォルダをソースフォルダから外しましょう。

何かもっと良い解決方法があれば良いんだけどなー…。

以下、詳細情報。


WEB+DB PRESS Vol.41

WEB+DB PRESS Vol.41

この特集2で取り上げられているサンプルアプリケーションをWTP版で作ってみることを想定します。

雑誌との手順の違いは以下の通り。

  • Tomcatプラグインのインストールが不要。(p.73「インストール」)
  • 同設定が不要。(p.73「TomcatEclipseへ認識させる」)
  • Projectを作る際に、プロジェクトタイプを with WTP として雛形生成。(p.74「DoltengでWebプロジェクトの作成」)
  • WTPのServerを新規作成・設定。
  • そのServerにWTPプロジェクトを設定して、Serverを起動します。

WTPでは、下記のディレクト*1が、Tomcatで言う %tomcat_home%/webapps と見なされ、各種ファイルが配置されます。

%workspace%/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/

しかし、viewフォルダがソースフォルダ指定されていると、中のhtmlが上記ディレクトリにコピーされず、TeedaはHtmlNotFoundRuntimeExcpetionを飛ばします。

まぁそんな理由で、ソースフォルダ指定ができません。ソースフォルダ指定されていてもコピーされるようにする手段があればいいのですが…。とりあえず見つからないので、ソースフォルダ指定を外してしまうことで対処しましょう。

*1:もしかしたらtmp0ではないかもしれない。状況により読み替え。