Java Web Application Framework総合 ver2

■ このスレッドは過去ログ倉庫に格納されています
2013/07/21(日) NY:AN:NY.AN
Java用のWeb Application Frameworkについて語るスレッド

海外では多数のFrameworkがあるのに、日本語の情報は意外と少ない
開発生産性、パフォーマンス、ドキュメントの充実度、安定性、使いやすさなどを
比較しながら、最高のフレームワークを探してみるスレッド

前スレ
http://toro.2ch.net/test/read.cgi/tech/1338707919/

Web Application Framework のリスト
http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks

特徴の比較
http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks#Comparison_of_Features
2013/11/08(金) 19:29:03.36
>>102
盛り上がったのは普通にseasarの出来がよかったからだし、衰退したのは開発ストップしたからだろ
2013/11/08(金) 22:11:18.14
SpringMVCでweb開発してるけど、いったん設計と実装の仕組み整えちゃえば
あとは仕様が増えても基本的に、コントローラ、インタフェース、サービス
周りのコピーでガンガンいけるから、自分的にはSpring一択だな。
2013/11/09(土) 02:04:11.76
>>102
クライアント側の新しい機能ならほしいかもしれないが、
サーバー側の開発って別にそんな新しい機能いらないんじゃないかねってのはある。
あえて新しくする必要がないというと叩かれるのかもしれんがそんな感じ。
2013/11/09(土) 09:09:47.92
Struts1.2+内製フレームワークをJava5で動かしている弊社が最強です。
2013/11/09(土) 09:18:39.71
webアプリだとサーバ側はたしかに、だいたいやること決まってきてるしな。
モデル側処理とか認証周りとかバッチとかサブシステム連携とかviewに必要な情報の生成くらい。

フロント側は最近はブラウザの表現力と処理能力上がってるから
JSPとかのサーバーサイドテンプレート使うよりは、jQuery使ったり
Backbone.jsやAngulerJSみたいなフロントエンドMVC使うケース増えてる。
サーバーサイドとはRESTでやりとりできればいいし。
2013/11/09(土) 12:10:01.79
>>102-103
開発を継続する人材が集まらないのは言葉の壁の問題といえるな
2013/11/22(金) 03:31:52.24
Vaadinってどうなの?
2013/11/22(金) 13:52:04.12
>>104
SpringMVC関係なくね?
2013/11/26(火) 23:06:10.99
>>109
それ、俺も知りたい
vaadin日本語ドキュメント少なすぎて涙出るよねー

皆さんは画面をどうやって作ってますか?使っているフレームワークを教えて頂きたいのですが
デザイナーに丸投げしているって回答以外にあったら教えて頂きたい
GWTをここ数ヶ月勉強してみたのですが、GWTは微妙な気がします
2013/11/29(金) 23:28:49.51
自分の場合、今は画面はサーバサイドで作らなくなった。
HTML5+CSS3であれこれやってる。

こういう画面デザインの事例見てると、綺麗に作るには
画面は画面でちゃんと作りたくなる。
http://www.pinterest.com/_f7/gui-great-ui-collection/
http://pttrns.com/
http://www.uiparade.com/
2013/11/30(土) 06:16:21.11
>>111
RIA系の開発プロジェクトでGWTを使った経験があるけれども、メリットはGUIロジックもJavaで
書けるのとサーバ側のAPIを叩く非同期RPCの仕組みの出来が秀逸なこと。
逆にこの二つが無ければ単に重くて面倒なフレームワーク。基本的にJavaの開発者がGUIも作る
ケースでないとあまり意味が無いと思うし、RPCを叩かず静的なページ間の遷移だけのアプリ
であれば他のフレームワークを使った方が楽だと思う。
例えばSwing+AppletとかFlexとかで作っていたRIAをプラグインレスのDHTMLベースに以降する
場合などは開発者のスキルも比較的生かしやすいのでよい候補になると思う。ただ率直な感情
としてはこの領域、今現在もFlex+MXML+ActionScript3の出来の良さは頭一つ飛び抜けていると
思うんだよね・・・フェードアウトしつつあるのがつくづく残念。

今は専らGrails。
画面云々以前に認証やセッション管理やフィルタやロギングといったアプリを作るのに必要な
裏側の機能が手作りしないでも全部入っているフルスタックなので。
Jerseyも使うけど結局は上記のものが必要になってくるので生Jerseyを使うことは無いかな。
Grailsに組み込んで使う。
RESTであってもAJAX用途であればステートレスに拘らずセッション使った方が楽だしねw
114111
垢版 |
2013/12/01(日) 11:15:32.04
>>112
そんな感じのリッチな画面を作りたいんです。

画面周りを手書きするのはよくあることなので我慢できますが、
javascriptを手動でデバッグするのだけは避けたいなと思いました。だから、GWTを勉強してみました。
結果、GWTは遅すぎてSSDマシンじゃないと厳しいってことがわかりました。
会社では自分の気分でマシンを変更できないので、GWTを使うのは難しいという結論になりました。

>>113
普段、Flexを使って開発しているので、Flexライクなjava frameworkが欲しいなーと思いました。
Flexは非同期処理基本だし、画面周りの制御が難しい(と言うより、処理速度が遅い)のがダメなところですよね。
javafxはflexのパクリだと思うのですが、javafxのweb版みたいなのがあればいいですよね
JSF勉強してみようかなって思いました
2013/12/02(月) 12:33:50.80
何も分かってないのが良く分かった
2013/12/03(火) 23:01:57.91
>>115
どこらへんが
2013/12/04(水) 22:23:08.22
>>114
サーバー側の仕組みに比重を置いてリッチなUI/UXを実現するのは不可能だよ。
見栄えについてはCSS3必須。その見栄えに命を吹き込むのがJavaScript。
サーバーサイドでできる範囲は、HTML5+CSS3+JSが育って実をつけるための
大地と水と肥料を用意すること。

GWTがどうとかって話じゃないことだけは確か。
2013/12/05(木) 00:11:39.37
>>117
GWTについて知らないでしょ。
知っていればサーバーサイドが云々とか言うコメントは出ない。
2013/12/05(木) 02:18:51.42
>>118
あー、すまんかった。
GAEと勘違いしてた。
2013/12/05(木) 11:24:55.81
GWTって今でもメンテされてるの?

GWTが楽ってのは聞いたことがあるけど、結局ブラウザ側のUI/UXを作り込むなら、
jQueryとかを直接使った方がいいと思っているのだけど・・・
2013/12/05(木) 16:20:11.52
jQuery を直接使って特に問題が起こらないならば、それで実現すれば良いのでは?

GWT などは Java だけで RIA がサポートできる所とかがポイントなわけですから、
(自分は使ったことないからあれですけれど)開発対象、人員、保守性、工期とか
色々踏まえて考えれば、状況次第ではアリな気がしています。

逆に凝った UI が要らなければ、旧来型の使い慣れたフレームワークや
テンプレートエンジンの方が開発も運用も過去資産も含めた実績があるので
トータルで安定するでしょうし、部分的に凝った UI が必要なら、そこだけを
重点的に対策した方が無難だと考えてしまいますね。
2013/12/05(木) 22:11:40.25
GWTはクオリティの高いUI/UX作るにはいろいろ役不足なイメージしかないな。
jQueryとその周辺プラグインのほうが、世界も広いし圧倒的に充実してるのと
Look&Feelに関しては、CSS3と各種CSSフレームワークで大抵のことはこなせる。

GWT採用しちゃうと、どうしてもGoogle風味から抜けられなくなるでしょ。
2013/12/06(金) 06:46:40.59
GWTとjQueryはちょっとレイヤーが違うので比較は出来ないかな。

jQueryはイベント周りの昨日とかjQuery UIはあるけれども総体としてはDOMの
直接操作を基本とした低水準(悪い意味じゃ無いよ)のライブラリ。
レイアウトや装飾はHTMLベースで記述して、そこにインタラクションをjQuery
で装飾していくイメージ。

他方でGWTは自身のレイアウト記述とウィジェットライブラリを持った一つ上の
レイヤーのツールキット。基本的には用意された部品を組み合わせて画面を
作る。

スタイリッシュで凝ったUIは作りにくいけれども、事務事務したおっさんくさい
UIを手っ取り早く作るのには結構便利 > GWT
2013/12/06(金) 11:46:30.47
>>123
これだけ読むとGWTはJSFと競合しそう
2013/12/07(土) 23:22:13.02
JSFってすごい難しいね
全然分からないや
2013/12/08(日) 03:06:58.87
FreeMakerがいい感じ
2013/12/08(日) 08:12:33.17
テンプレートとしてはGSPはええで。
2013/12/08(日) 16:23:40.46
GSPって、今でもGrails縛りなん?
129デフォルトの名無しさん
垢版 |
2013/12/08(日) 22:34:18.01
JavaSEとJavaEEの違いで、SEにはJDBCが入っているが、EEには入っていない。
これは、EEに含まれているEJBの中にJDBCの機能が入っているからだと、納得してよいでしょうか?
2013/12/08(日) 22:57:00.51
JavaEEはJavaSEを含んでるから
131デフォルトの名無しさん
垢版 |
2013/12/08(日) 23:02:22.74
>>130
なるほど。ありがとうございます。
132デフォルトの名無しさん
垢版 |
2013/12/08(日) 23:09:42.71
中小企業の現行システム(旧来のクライアントサーバーシステム)を
Webシステム化するのですが、JavaEE+JSF+?・・・を考えています。
しかし、JavaEEは、中小企業レベルでは重いかなと心配です。
やはり、JavaSE + Strus2 + ・・・とかで、行うべきでしょうか?

サーバーのハード機能が良くなっているのでJavaEEでも問題ないでしょうか?
2013/12/08(日) 23:15:42.24
一番いいのはASP.NETだけどJavaじゃないとだめなの?
134デフォルトの名無しさん
垢版 |
2013/12/08(日) 23:20:38.05
>>133
元請けの中小SIerが、Javaを希望してきているのです。
135デフォルトの名無しさん
垢版 |
2013/12/08(日) 23:22:54.72
あー、コレ失敗するパターンやわ。
2013/12/08(日) 23:26:57.59
言語だけ指定されたとしたら、その元請は馬鹿だなw
137デフォルトの名無しさん
垢版 |
2013/12/08(日) 23:34:10.39
>>135,>>136
Javaのシステムを他にも横展開したいようです。
それと、.NET系はコストが掛かるのがネックみたいです。
2013/12/09(月) 02:38:16.30
>>132
中小企業でSIerに丸投げするレベルならJavaはやめたほうがいい
Javaには開発生産性の高いフレームワークがないから、
開発のコストが高くつく。
一番高いコストはライセンス料金ではなくて人件費だよ

絶対にASP.netがベストだと思うよ
Windows認証使わずにベーシック認証を使うようにすれば
クライアントアクセスライセンスも要らない。
データベースもMySQLなどのオープンソースを使えばいい。
Windows Server(IIS)のライセンスだけならASP.netは安いものだよ。

>>137
.NETが高いとか言ってるようではそのSIerのレベルは怪しい。
SIerはJava以外はよくわかってない人ばかりなんだと思う。
そいつらの本音はJavaの知識と経験を使いまわしたいだけだよ
2013/12/09(月) 02:55:38.46
既にStrutの蓄積があるならともかく今から始めるなら普通にJavaEEかSpringMVCで
良いんじゃね?

元請けがJavaの経験あるなら彼らがそれを使い回すのは普通に合理的判断だしそこ
に.Net提案したところで干されるだけでしょ。
2013/12/09(月) 02:59:40.78
>>138
Windows認証とベーシック認証を比べる人にこの分野のアドバイスはあまり聞きたくないと思う。
2013/12/09(月) 03:16:26.31
>>140
何がおかしい?
認証方法でASP.netのトータルのライセンス料金が
大きく変わるんだから触れるのは当然だろう
Windowsの認証を使わなければ安くなる

あんたこそライセンスなにも知らないんじゃないか
2013/12/09(月) 05:58:15.33
Java 前提で話が進んでるのに、.NET と騒いで簡単に変わるものなのかな?
.NET の方が上手く扱えて交渉できそうなら、それも一つの解だと思います。

>>132
何を基準に重そうと判断してるのか外野からだと理解できないです。それより、
そのような質問をしてる時点でそもそも自分たちで作れるの?という方が心配・・・。

どんな高性能なフレームワークや素晴らしいアーキテクチャを採用してても
根幹の設計や主要な実装を誤れば低速でポンコツなものに仕上がるでしょう。
開発メンバーのプロジェクトと利用技術に対する理解の方が重要な気がします。

既に自分達で実績を持つ慣れた構成があるなら、それをベースに研究開発的要素を
極力無くすのが着実なゴールを取るための堅実な手法だと考えますが、
そういった構成が無いのであれば、時間のある内にさっさと活用する技術要素を
調査して開発メンバーで制御できる構成にまとめてしまうのが無難でしょう。
他人に言われて選定しても扱えない/向かない技術だった場合、意味がありませんので。

もっと細かいことを評価できる材料が挙げられれば、どのフレームワーク構成が
良いか?とか、具体的なアドバイスも得られやすいかもしれません。
2013/12/09(月) 07:10:54.44
>>141
認証のプロバイダとメソッドの区別のつかない人がウェブアプリの開発について何が言えるの?
あと中小のクラサバをWebアプリ化って多分イントラ向けでしょ。
普通にCALの購入が必要なパターンだと思うけど。認証方式関係ないし。
2013/12/09(月) 07:42:50.22
>>133
すれも読めない馬鹿
145デフォルトの名無しさん
垢版 |
2013/12/09(月) 09:05:07.01
>>132 です。
みなさんアドバイスありがとうございます。
JavaEE + SpringMVC + ・・を検討してみます。

JavaSE + Struts + 手作りのDAOもどき の経験しかないので
本当は、JavaEE + SpringMVC + ・・は避けたいのですが・・・・。トホホ。
2013/12/09(月) 09:44:11.74
自分たちで作れる=お守りできる技術で作るのが一番。
新規の案件で新規の技術を使うとかリスクの塊じゃん。
新しい技術使いたいなら社内案件とか無難な奴でやっとけ。
ちなみに俺ならWicket+JPAかな、一番慣れてるから。
2013/12/09(月) 10:22:56.64
>>145
>JavaSE + Struts + 手作りのDAOもどき の経験しかないので
トホホだろうね
2013/12/09(月) 11:23:30.09
JavaSEでWebアプリって作れるの?
2013/12/09(月) 21:25:28.16
>>145
JavaEE と SpringMVC は、役割がかぶってますよ

JavaEE = JSF2 - EJB3 - JPA2
Spring = SpringMVC - Spring Framework - Hibernate/JPA

Struts2 は、会社を潰したいのでなければやめた方がいい
(喩え話ではなく、中小企業なら本当に潰れます。大きい企業なら
CTO が首になる)

自分が好きにできるなら、
AngularJS - JAX-RS/Websocket - EJB3 - JPA2
かな。
2013/12/09(月) 21:51:40.90
>>149
その構成でログインや認証ってどうやります?
151149
垢版 |
2013/12/09(月) 22:32:02.72
>>150
(要件のリッチ度によるが、) ユーザ認証・認可はアプリのレイヤではやりたくない。

ユーザ認証や認可は、JAASやSSO とブラウザ (とユーザ) の間で、勝手に解決してもらって、
アプリからは、何も考えずに req.getRemoteUser() なり req.getUserPrincipal()
でアカウント名や権限グループが取れるのが ... [作り手]としては理想。

そうなるように、よくよく費用対効果を説明して、お客さんに勘弁してもらうと、
後々双方とも幸せになれる。
(認証・認可を作りこむと、テストケースが爆発 ... の割にはユーザビリティ
の向上はごくわずか)

あと、JAAS の認証は多少融通が効きます。(3回失敗で5分ロックなど)
Glassfish、JBOSS なら既存の認証モジュールを参考に自作の認証モジュール
を作って差し替えることができる。
商用のコンテナの場合でも聞けば、やり方を教えてくれるはず。
2013/12/09(月) 23:40:25.11
>> 151
そういえば、Glassfishの商用版がなくなったらしいね

>>138
> ASP.netは安いものだよ。
> .NETが高いとか言ってるようではそのSIerのレベルは怪しい。
おれも、そう思うわ
2013/12/10(火) 05:20:10.23
どうしてもJavaでなければいけない理由がないなら
フルスタックのフレームワークでやるほうがはるかに楽だよな
3大人気の、ASP.net、Ruby on Rails、Djangoあたりで

いろんなライブラリを組み合わせなければいけないJavaはめんどくさい
保守のコストもかかる
2013/12/10(火) 05:29:18.25
フルスタック必要ならGrailsで良いじゃん。Javaの資産使えるし。
2013/12/10(火) 08:41:45.63
>>153
おまえなんでこのすれにいるの?
2013/12/10(火) 09:18:24.81
たしかにw
2013/12/10(火) 09:35:55.95
>>155-156
言語はJava8でいくらかましになるが、
まともなフルスタックのフレームワークすらないJava

Javaの痛いところつかれて反論できなくなって人格攻撃か
なさけない奴らだな
2013/12/10(火) 10:44:07.22
>>157
すれちだろ
2013/12/10(火) 13:37:54.00
>>157
Javaが嫌なら、スレから出て行けよ
スレタイも読めないのかこの池沼は
2013/12/10(火) 16:42:40.75
ASP.netくんの言いたい「フルスタックフレームワーク」が何を指すのかようわからんが・・・

デプロイ環境からORM、View生成まで、ウェブアプリケーション開発に必要なものが全部
揃っているAPI Frameworkと言う意味ではJavaEEと標準実装であるGlassfishがそうだろう。
Rails風のCoC重視でコマンドラインも併用したRAD環境であればGrailsやRooがある。
2013/12/10(火) 17:25:48.81
>>160
GrailsはGroovyだからJavaと主張するには無理がある
GroovyなんてJavaの負の部分を引きずった醜い世界

JavaEEはWebアプリケーションフレームワークというよりライブラリ
「フルスタック」とはなにか分からないのもJavaしか知らないからだろうな
2013/12/10(火) 18:28:47.80
>>161
>GrailsはGroovyだからJavaと主張するには無理がある

使ってから言えばよいのに。
2013/12/10(火) 18:47:04.53
>>162
Grailsは使ったことある
動作ももっさりだった
これでもJavaの中ではましなのかもしれないが
他の言語の人気フレームワークより使いづらかった

あと中身はSpringがベースでしょう
軽く触ったからそれくらはしってる
2013/12/10(火) 20:29:35.41
ASP.netってVS無しでまともに開発できんの?
マカーでIntelliJユーザなんだが。
2013/12/10(火) 20:39:44.95
まかーはすれちもわからんのか
2013/12/10(火) 21:45:56.04
Glassfishって使い勝手とかどうなんでしょう?
2013/12/10(火) 22:16:07.56
ASP.netはスレチだが開発環境の広さという意味ではASP.netとそれ以外では歴然と差があるな。
JavaもEclipseが走れば開発環境は何でもよいという人も少なくないのでは。
2013/12/10(火) 22:23:58.35
>>167
すれち
2013/12/10(火) 22:27:56.81
Javaの開発環境の広さはスレチじゃないと思うが。というか実際何使って開発してる?
2013/12/10(火) 22:38:21.63
>>167
すてまおつ
2013/12/10(火) 22:40:54.87
>>169
パソコン
2013/12/10(火) 22:43:29.33
>>169
2013/12/10(火) 22:46:37.34
>>169
キーボード
2013/12/11(水) 01:23:11.07
>>169
Eclipse
2013/12/11(水) 01:47:27.90
>>169
Vi
2013/12/11(水) 01:51:32.47
>>169
TOTO製
2013/12/11(水) 16:19:52.57
>>166
使い勝手を気にする用途に使ってるやつはいないだろう
2013/12/11(水) 19:39:42.11
GlassFishが商用サポート切るとかたまったもんじゃないな
JerseyからRESTEasyに切り替えないといけなくなりそうだ
2013/12/11(水) 19:45:15.93
やっぱasp.netが一番いいな
2013/12/11(水) 20:37:30.52
>>179
ポエムは真板へ
2013/12/11(水) 23:28:37.07
>>179
Web Froms時代はいまいちだったけど
ASP.net MVCは最高だよな
2013/12/11(水) 23:32:27.89
>>181
すれち
2013/12/11(水) 23:34:15.13
MS厨はなぜ粘着するのでしょうか?
2013/12/11(水) 23:45:27.57
ステマ
2013/12/11(水) 23:47:27.13
>>182-183
>>171-176のような無駄レスは文句をいわないくせに
ASP.netの文字が出ると感情的に批判してくるのな
2013/12/11(水) 23:51:42.85
>>185
ここでやってくれ、さようなら
http://toro.2ch.net/test/read.cgi/win/1146488925/
2013/12/11(水) 23:57:24.28
>>186
開発と関係ない板のURLはって馬鹿じゃないの?
少しはJavaの話でもすれば?
2013/12/12(木) 00:06:14.84
すれちに馬鹿といわれちゃった、わーん!!!
2013/12/12(木) 00:07:31.28
ておばちゃんか、しょうがねーな
2013/12/12(木) 10:16:01.45
真性のカスだなw
2013/12/15(日) 20:46:37.58
http://news.mynavi.jp/news/2013/12/13/062/index.html
Spring Framework 4.0正式版リリース - Java 8、Java EE 7に対応
2013/12/18(水) 00:19:57.11
すれちだろ
2013/12/18(水) 00:33:41.58
GlassFish使っててJBossへの乗り換えを検討してる所は少ないの?
JerseyMVCとか試そうかと思ってた矢先だったからなぁ
194デフォルトの名無しさん
垢版 |
2013/12/20(金) 12:37:54.79
一生プログラマーでいたいならフルスタックとかで楽すればいいよw
2013/12/22(日) 00:56:53.89
あんだけ某関係者の人がTomcatはオワコンこれからはGlassFishとかとDisってたのに
いつの間にかGlassFishの方がオワコンになっていたのか。

まあ、今もTomcat使って古いフレームワーク(StrutsとかSAとか)で動かしてる(爆)だからどうでもいいけど。
2013/12/22(日) 02:58:54.87
Java自体が終わりそうだけどね
ライブラリがクソすぎる
2013/12/22(日) 07:51:22.48
>>196そうか残念、さようなら
2013/12/22(日) 08:45:35.32
asp.netが強すぎるからな
2013/12/22(日) 09:49:22.90
>>198
そうか、どうでもいいけど、さようなら
2013/12/22(日) 13:04:11.82
Tomcatは起動が重いんだよな。
Jettyが軽くていい感じなんだけど、Tomcatに比べて日本語情報が少ない感じ。
JDBC使うのに、JNDI周りの情報も少ない。
2013/12/22(日) 17:38:03.86
JBossが最強だろ
2013/12/22(日) 18:44:49.04
ローカル試験で使う分にはWinstoneも軽くて良いですよ。
なにせjarファイル1個で動いて、160kbくらいだし
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況