学生アルバイトで、2002年ごろにJSP/Servletを、2003年にEJBに触れたことがあるのですが、最近はWebアプリ作る機会がなく浦島太郎状態です。
調べるといろいろなフレームワークがあるようで、皆様の意見を聞かせていただければと思います。
作りたいのは業務アプリでWebアプリとしては中規模で、サーバーの分散化は必ずしも必要ではありません。開発環境はWindows、運用はLinux(Debian)かFreeBSD、ソフトはすべてフリーのものを使用する予定です。
フレームワーク、開発環境(今のところEclipse+WTPの予定)、サーバー構成などについて何でも良いのでお願いします。
JavaのWeb開発フレームワークならwicketなどはいかがでしょうか。
以下に詳細が載っています。
http://journal.mycom.co.jp/news/2005/11/01/033.html
HTMLとJAVAのソースをそれぞれ独立させ、単独に管理できるフレームワークのようです。
しかも他のフレームワークのように煩雑なXMLによる設定ファイルも必要ないので「ちょっと作ってみようかな」という時には
よいのではないでしょうか。
J2EEのフレームワークのデファクトは「Struts」だと思います。
対抗馬としては「JSF」ですね。
また、Webシステムは必ず裏にDBがありますので
この連携としてO/Rマッピングのフレームワークも
検討する必要があります。
最近の傾向としては機能間繋がりをDIを使って
定義するフレームワークも流行りです。
「Sprnig」
個人的には和製フレームワークのseasar2が気になります。
ただし、どれを利用するにしても
事前調査を行わないと、ハマル可能性はあります。
開発環境はEclpseで決まりだと思いますが。
pluginによってはマシンスペックと相談しないと
サクサク開発ができません。
(WTPは重いかと・・・)
All-In-One Eclipse
http://aioec.sourceforge.jp/cgi-bin/wiki.cgi?page=All%2DIn%2DOne...
Strutsは結構昔からありますよね。
Spring、seaser2を比較するとどちらが良いと思いますか?
開発マシンのスペックは特に問題ありません
以降の回答者の方へ
まだ出ていないフレームワークを挙げていただいても結構ですが、以下の単語を出す場合は評価もお願いします。
JSF,Struts,Hibernate,Spring,Seaser2,Eclispe/WTP,wicket
「Seaser Projectの全貌を探る」シリーズ
http://www.atmarkit.co.jp/fjava/rensai3/seasar2_01/seasar2_01.ht...
Seaser Projectについて、現在も進行中の各プロジェクトの概要やDBアクセスにHibernateを利用するための特集などが載っていますので、Seaser2について理解するために一読されてはいかがでしょうか?
また、@ITの下記の特集でもJ2EEサーバやSpring、Seaserなどに関する紹介がされています。参考まで。
フリーのWebコンテナ/J2EEコンテナを整理する
http://www.atmarkit.co.jp/fjava/rensai3/osc01/osc01.html
Webアプリケーションフレームワークの定番
http://www.atmarkit.co.jp/fjava/rensai3/osc03/osc03.html
尚、Seaser2やSpringなどはEJB2.0までの重い処理を嫌って出てきましたが、EJB3.0ではDI技術などが盛り込まれたので、EJB3.0に対応したJ2EEサーバを利用して、Springとかは利用しないというのもアリだと思います。
最後に、業務アプリの特性にあった言語として、Javaが浮上したのでしょうか?そうでないのであればJavaよりもPHPなど他の言語の方が簡単に開発できるかもしれないので、見直しが可能であれば言語から検討し直す方が開発工数的なことを考えると安全だと思います。
DI技術は使ったことはありませんが便利そうですね。
以下「業務アプリ」や言語について補足です。
受託ではなくて自社開発(ASP方式での展開)で自分一人で開発する予定です。言語等は自由に選べます。
もちろんPHPは書けなくはありませんが、C#やJavaを常用しているのでその延長でやろうかなと思っています。特にEclipse+Javaの組み合わせに習熟しているのでそれを生かそうかな程度です。
PerlなどでWeb開発した時期もありましたが、今では自分が統合開発環境にどっぷり浸かっている影響もありまして、肌に合わないなぁと感じています。
以降の回答者の方へ
お勧めの組み合わせがあればお願いします。「こういう場合はこれでこういう場合はこれ」のような感じでも構いません。
また、「この組み合わせで開発したらこうだった」等も歓迎します
特徴的なフレームワークですね。ありがとうございます。
XMLによる設定がいらないのは良いですね。
以降の回答者の方へ
リンク先は本家サイトをお願いします。もちろん有用であれば紹介記事でも構いません。