powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Struts vs JSF vs Spring
60 сообщений из 60, показаны все 3 страниц
Struts vs JSF vs Spring
    #34451980
beginner01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток

Работаем над проектом Java(JSP, Servlet, JSTL) + Tomcat + Oracle.

Вопрос:
Стоит ли использовать какой-нибудь из framework'ов (Struts, JSF, Spring) и если да,
то какой посоветуете, например с точки зрения надежности в работе и в простоте использования.

Заранее спасибо всем за ответы.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452097
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Незанаю насчет Struts 2 (не знаком), но сравнивать Struts 1.1 и Spring imho не корректно, это просто решения из разных весовых категорий. У спринга собсвенно своих два web frameworks: spring web MVC и spring portlet MVC.


Вот Struts 1.1 можно сравнивать с spring web MVC, но это совсем небольшая часть spring.
Если эти вещи сравнивать, то даже здесь spring web MVC намного гибче Struts.

1. Комманды в spring просто pojo, ни от кого не должны наследоваться.
2. Для того чтобы определенить какому controller передавать в spring`е это интерфейсы и можно подставить свою реализацию, в struts жестко зашито что на основе url.
3. Struts все-таки jsp центричная вещь. В spring View лучьше отделены, можно все предаставление переписать, а потом просто заменить ViewResolver, при этом сомсем не придется что то делать в контроллерах.
4. Попратьве если я ошибаюсть, но struts ActionForm нормально умеет работать только со строками, с другими типами все не так уж хорошо. Т.е. получаться что это просто некоторый буфер для хранения строк, и передавать его на уровень сервисов не очень красиво (появляется зависимость уровня сервисов от struts).
5. Нет interceptors.

Так что если Struts или Spring, то лучьше Spring.

Хотя на web уровне spring может легко использовать struts, а на уровне сервисов и persistence использовать все helper классы spring`а.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452102
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452334
jikez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На сколько я знаю в JDeveloper есть поддержка и Struts и JSF
Я бы всётаки стал изучать JSF, всё как никак SUN'ом декларируется как стандарт.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452356
jusio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Spring. Struts конечно прост и надёжен, ну уж больно он прост=)
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452373
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jikezНа сколько я знаю в JDeveloper есть поддержка и Struts и JSF
Я бы всётаки стал изучать JSF, всё как никак SUN'ом декларируется как стандарт.
Как уже припарил этот дурацкий аргумент - "стандарт". J2EE стандарты тихонько плачут в углу, когда появляется более или менее адекватная opensource альтернатива.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452416
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz
Как уже припарил этот дурацкий аргумент - "стандарт". J2EE стандарты тихонько плачут в углу, когда появляется более или менее адекватная opensource альтернатива. +1 у меня тож есть альтернатива)))
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452420
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jikezНа сколько я знаю в JDeveloper есть поддержка и Struts и JSF
Я бы всётаки стал изучать JSF, всё как никак SUN'ом декларируется как стандарт.

У стандартов есть несколько неприятных особенностей:

1. Стандарты пытаються покрыть все, очень часто обрастая из-за этого ненужной сложностью, которая и используется очень редко.
2. Стандарт замораживает/останавливает развитие, пока не появиться новый стандарт.

Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452796
jikez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0
Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.

Не важно где кому стыдно, но при использовании стандартов уж до боли приятно когда у тебя один и тот же проект деплоится под разными Application Server'ами без дополнительных танцев с бубнами.
и не надо чесать репу когда у тебя в логах туева хуча эксепшенов по непонятным причинам :(

я не агитирую за стандарты, просто мне структура JSF-приложений кажется более логичной.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452806
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas01. Стандарты пытаються покрыть все, очень часто обрастая из-за этого ненужной сложностью, которая и используется очень редко.
2. Стандарт замораживает/останавливает развитие, пока не появиться новый стандарт.

Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.
По пункту №1 есть замечаточный пример. Это сервлеты. Все ими пользуются. Но хоть кто нибудть может сказать что он использует не HTTP реализацию сервлетов? Ага. Вот и думаешь после этого, а на кой было от HTTP абстрагироватся?

3. Есть ещё один важный пункт. http://rsdn.ru/Forum/Message.aspx?mid=2438762&only=1 . Которому дали хороший термин "Corner cases". Это разные неприятные мелочи. Которые либо не упомянуты, либо не продуманы спецификацией. Убогий Servlet URL маппинг. Не специфицированя кластеризация. Не специфицированый процесс деплоймента. Не понятная реализация песимистического лока в EJB3... и много другого, что не делает жизнь лучше.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34452868
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jikezНе важно где кому стыдно, но при использовании стандартов уж до боли приятно когда у тебя один и тот же проект деплоится под разными Application Server'ами без дополнительных танцев с бубнами.
и не надо чесать репу когда у тебя в логах туева хуча эксепшенов по непонятным причинам :(

Это все миф и неверные догадки. Аргументирую:
1) Деплоймент дескрипторы зачастую надо переписывать.
2) Разные датасорсы, логирование и многое другое надо конфигурять на конкретном сервере.
3) Переезд любого серьезного приложения на другой сервер, требует как минимум детального тестирования на новом сервере. И чем больше привязка приложения к J2EE тем больше аспектов надо тестировать. А вот если к примеру проект использует не JSF а Spring MVC + Velocity. То все что касается web слоя будет одинаково работать на всех серверах. Потому что привязки к конкретному серверу там нет.

Так что принцип "написано однажды - работает везде" для "нестандартных" решений работает гораздо лучше чем для "стандартных" J2EE решений. Потому что нестандартные действительно не зависят от сервера приолжений.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453016
vykhodtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vas0
Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.
Стыдно должно быть что они ее не доделали до конца и приходится этим самому заниматься
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453069
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz
Так что принцип "написано однажды - работает везде" для "нестандартных" решений работает гораздо лучше чем для "стандартных" J2EE решений. Потому что нестандартные действительно не зависят от сервера приолжений.

Гениально, особенно если учесть то, что сервер приложений это реализация JEE.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453113
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vykhodtsev vas0
Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.
Стыдно должно быть что они ее не доделали до конца и приходится этим самому заниматься


вообще я имел ввиду вот это :

Код: plaintext
1.
2.
3.
4.
5.
<sql:transaction isolation="serializable">
    <sql:update>
        update books set edition="2" where author="spielman"
    </sql:update>
</sql:transaction>

Ползуйтесть люди, очень удобно с точки зрения тестирования и повторного использования
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453127
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0 vykhodtsev vas0
Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.
Стыдно должно быть что они ее не доделали до конца и приходится этим самому заниматься


вообще я имел ввиду вот это :

Код: plaintext
1.
2.
3.
4.
5.
<sql:transaction isolation="serializable">
    <sql:update>
        update books set edition="2" where author="spielman"
    </sql:update>
</sql:transaction>

Ползуйтесть люди, очень удобно с точки зрения тестирования и повторного использования

А что, читать запрос из файла не получается?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453183
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessen
А что, читать запрос из файла не получается?

нет меня просто не вставляет, когда у меня jsp начинают рулить транзациями, да и вообще выполнять какую-либо бизнес логику. Плюс еще хочется как то исключения обрабатывать.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453275
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vas0
вообще я имел ввиду вот это :

Код: plaintext
1.
2.
3.
4.
5.
<sql:transaction isolation="serializable">
    <sql:update>
        update books set edition="2" where author="spielman"
    </sql:update>
</sql:transaction>

нет меня просто не вставляет, когда у меня jsp начинают рулить транзациями, да и вообще выполнять какую-либо бизнес логику. Плюс еще хочется как то исключения обрабатывать.

а это разве не из JSP? и не транзакции с логикой? или я не понял чивота...
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453323
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenГениально, особенно если учесть то, что сервер приложений это реализация JEE.
Что тут гениального? J2EE не покрывает целый ряд аспектов, в результате чего каждый сервер реализует эти аспекты как угодно.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453429
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
am_sasa
а это разве не из JSP? и не транзакции с логикой? или я не понял чивота...

там обсуждение началось вот с этого

vas0
Ну и не все sun стандарты удачные, например sql часть в jstl. Мне кажется что за такое sun-овцем самим стыдно.


потом я привел пример
vas0
вообще я имел ввиду вот это
Код: plaintext
1.
2.
3.
4.
<sql:transaction isolation="serializable">
    <sql:update>
        update books set edition="2" where author="spielman"
    </sql:update>
</sql:transaction>


потом вопрос
wessen
А что, читать запрос из файла не получается?


vas0
нет меня просто не вставляет, когда у меня jsp начинают рулить транзациями, да и вообще выполнять какую-либо бизнес логику. Плюс еще хочется как то исключения обрабатывать.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453494
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz wessenГениально, особенно если учесть то, что сервер приложений это реализация JEE.
Что тут гениального? J2EE не покрывает целый ряд аспектов, в результате чего каждый сервер реализует эти аспекты как угодно.
Хочешь сказать, что приложение использовавшее хибер будет легче переносить, чем приложение использовавшее EJB? Может конечно оно и так, вот только нахрена тогда сервер приложений вообще нужен, если свести к минимуму использование J2EE? Я не случайно привер пример с хибером, т.к. дело с ним не имел, а вот с остальным, ejb, веб сервисы, JSF и т.д. никаких проблем при переносе не возникало, естетсвенно спецефичные для СП дескрипторы приходилось писать. А вот нестандартный хибер, судя по документации Jboss встроен туда намертво и думаю что геморой при переносе приложения его использующего, возникнет.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34453875
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenХочешь сказать, что приложение использовавшее хибер будет легче переносить, чем приложение использовавшее EJB?

Да.

wessen
Может конечно оно и так, вот только нахрена тогда сервер приложений вообще нужен, если свести к минимуму использование J2EE?

Ну есть такие вещи как JMS, например. И сервлеты. Без этого сейчас никуда. К тому же сервер зачастую предоставляет ряд удобных возможностей в плате редеплоя и мониторинга.

wessen
Я не случайно привер пример с хибером, т.к. дело с ним не имел, а вот с остальным, ejb, веб сервисы, JSF и т.д. никаких проблем при переносе не возникало, естетсвенно спецефичные для СП дескрипторы приходилось писать.
А вот замечательнейший пример между прочим. Давай разовьем тему. Итак есть EJB3 persistence. И есть всего 2 его реализации это Hibernate и TopLink. И на сколько бы тебе хибер не казался не стандартным, с этим ничего не попишешь он один из немногих кто реализует спеку EJB3 persistence(не помню какое там у неё точное название).

Так вот. Взять к примеру какой-нить метод. EntityManager.lock. Я вот знаю, в случае хибера он ложиться на хибернейтовский метод lock который делает SELECT FOR UPDATE.
Но теперь я хочу портировать своё приложение с JBoss на Oracle AS. И скажи мне с пол пинка. Что буде происходить на TopLink с вызовом "стандартного" метода EntityManager.lock? А если чур в TopLink не заглядывать а попытатся разобратся по спецификации и EntityManager API doc?
Вот это-то и называется, здравтсуй жпа - новый год. Ты не знаешь что там реально происходит. И не сможешь угадать. И не сможешь предсказать заработает ли этот метод при переезде на другой сервер как тебе надо или нет.

wessenА вот нестандартный хибер, судя по документации Jboss встроен туда намертво и думаю что геморой при переносе приложения его использующего, возникнет.
Это тебя в какое-то словоблудие понесло. Хибернейт реализует "стнадартную" спеку EJB3. Это для тебя новость или сюрприз?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454330
vykhodtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vas0
нет меня просто не вставляет, когда у меня jsp начинают рулить транзациями, да и вообще выполнять какую-либо бизнес логику. Плюс еще хочется как то исключения обрабатывать.

Нам проще - у нас бизнес логика на pl/sql. В jsp никакой логики нет, только вызов хранимых процедур.
Вот с этим то и были проблемы, так как <sql:update> толком хранимки не поддерживает.
Пришлось самому дописывать (а также еще некоторые вещи), впрочем ничего сложного.

А исключения прекрасно обрабатываются через <c:catch>.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454473
termit31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень хорошая дискуссия, но участники увлеклись деталями. Хотелось бы услышать от каждого обобщение сказанного. Т.е. "я считаю, что Struts> JSF> Spring", "а я что Struts< JSF< Spring". Хочется услышать совет. Заранее спасибо.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454740
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рейтинг по web frameworks с которыми я знаком (это мое субъективнео мнение)

1. Tapestry 4.0
2. Spring MVC (это не весь spring)
3. Beehive
4. Struts 1.1

Вообще самому интересно как люди оценивають такие вещи как: Web Work, Struts 2, JSF, SEAM и какой бы рейтинг составили другие.

Вообще при выборе framework, на мой взгляд очень многое зависит от IDE которую будешь использовать, насколько он хорошо со средой интегрирован, есть ли хорошие плагины и т.п.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454790
termit31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А для IDEA наиболее подходящий тогда какой?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454800
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz

wessenА вот нестандартный хибер, судя по документации Jboss встроен туда намертво и думаю что геморой при переносе приложения его использующего, возникнет.
Это тебя в какое-то словоблудие понесло. Хибернейт реализует "стнадартную" спеку EJB3. Это для тебя новость или сюрприз?

Я имел ввиду те далекие времена, когда ejb были версии 2.х и с хибером их объединяло только то, что это были ORM средства. Не думаю, что тогда еще, нестандартный хибер, было так просто таскать по разным серверам приложений.
А что качается ejb 3.0 и приведенного метода EntityManager.lock, так ведь так ко всему можно придраться и к сервлетам и к jsp и к JMS... Это уже дело программстов реализующих стандарты. И если мой сервлет работает не так, как написано в спецификации, то ну ее в жпу такую реализацию и СП вместе сней. Т.е. реализация стандартов связана с переносимостью приложений, но не напрямую, а косвенно.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454806
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
termit31Очень хорошая дискуссия, но участники увлеклись деталями. Хотелось бы услышать от каждого обобщение сказанного. Т.е. "я считаю, что Struts> JSF> Spring", "а я что Struts< JSF< Spring". Хочется услышать совет. Заранее спасибо.

Struts и JSF вещи несовместимые, не нужно их смешивать.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454895
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
termit31А для IDEA наиболее подходящий тогда какой?

Знал бы прикуп, жил бы в Сочи. ©

Я не могу на этот вопрос ответить.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34454902
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стандарты вообще дело хорошее, никто не говорит что это зло.

Но в последнее время profession open source делат примерно так
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455061
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0Стандарты вообще дело хорошее, никто не говорит что это зло.

Я говорю. И не только я.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455085
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
termit31Очень хорошая дискуссия, но участники увлеклись деталями. Хотелось бы услышать от каждого обобщение сказанного. Т.е. "я считаю, что Struts> JSF> Spring", "а я что Struts< JSF< Spring". Хочется услышать совет. Заранее спасибо.
Чтобы нормально определиться надо смотреть что у вас уже понаписано на JSP. Но если только субъективно, то.
Spring MVC рулит потому что простой и потому что интегрится 8)) в Spring.
JSF рулит потому что компонентный, но не рулит, потому что "стандарт", который трактуют кто как хочет. И потому что далек от HTML. Хотя facelets как-то дело и поправляют, но все же непонятно для чего тогда был JSF в изначальной интерпритации которая выглядела как сплошной JSTL.
Struts 1 вообще не рулит. Struts 2 немного подруливает, но только в сравнении со Struts 1. Никаких особых его достоинств перед первыми двумя вариантами я не знаю.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455134
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz vas0Стандарты вообще дело хорошее, никто не говорит что это зло.

Я говорю. И не только я.

Здесь я не согласен, не хотел бы я оказаться во временах когда не было J2EE. И каждый начинал придумывать свою безопастность, свою EJB, ... свой applicatin server. Ну или пойти еще дальше и отбрать стандарт SQL 92, что тогда делать то?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455137
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas03. Beehive
Расскажи.

vas0Вообще самому интересно как люди оценивають такие вещи как: Web Work, Struts 2, JSF, SEAM и какой бы рейтинг составили другие.
Struts 2 это и есть Web Work. JSF в принципе рулит готовым набором компонент и скоростью разработки простых решений. Когда начинаются нюансы то с ним приходится повозится. Ещё его "стандартность" отпугивает тем что на разных серверах он может работать поразному. Поэтому наверное проще одну реализацию просто в виде либы таскать.
SEAM, ну на всяких простых примерах он конечно же хорош. Но во-первых это железная привязка к EJB3 и JSF, во-вторых я уверен что с его абстрагированостью в мелочах и начнутся затыки.

vas0Вообще при выборе framework, на мой взгляд очень многое зависит от IDE которую будешь использовать, насколько он хорошо со средой интегрирован, есть ли хорошие плагины и т.п.
Плох тот фреймверк для которого необходима интеграция с IDE. Хороший фреймверк интегрировать не надо, потому что он должен быть максимально близок к Java и HTML. С ними любая IDE справится. Ну и немного XML для связки.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455159
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vas0Рейтинг по web frameworks с которыми я знаком (это мое субъективнео мнение)
0. XSLT
1. Tapestry 4.0
2. Spring MVC (это не весь spring)
3. Beehive
4. Struts 1.1

це мое субъективное
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455169
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenЯ имел ввиду те далекие времена, когда ejb были версии 2.х и с хибером их объединяло только то, что это были ORM средства. Не думаю, что тогда еще, нестандартный хибер, было так просто таскать по разным серверам приложений.
Ты меня все больше удивляешь своими умозаключениями. Хибер от того и стал популярным что заруливал EJB2 по всем параметрам. А в чем сложность таскать его по разным серверам ты можешь объяснить? Это всего лишь либа. Положил её и она работает. На ЛЮБОМ сервере. А не как овняный CMP. На одном сервере 100 запросов а на другом 200 для одной и той же операции.

wessenА что качается ejb 3.0 и приведенного метода EntityManager.lock, так ведь так ко всему можно придраться и к сервлетам и к jsp и к JMS... К JSP нельзя он привмитивный поэтому почти везде почти одинакво компилируется без всяких загадок.

wessenЭто уже дело программстов реализующих стандарты. И если мой сервлет работает не так, как написано в спецификации, то ну ее в жпу такую реализацию и СП вместе сней.
Блин. А если в спецификации не написано то что??? По-моему ну её в пу такую спецификацию, к которой всегда что-то да не написано.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455245
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
am_sasa vas0Рейтинг по web frameworks с которыми я знаком (это мое субъективнео мнение)
0. XSLT
1. Tapestry 4.0
2. Spring MVC (это не весь spring)
3. Beehive
4. Struts 1.1

це мое субъективное

с каких это пор XSLT стал web framework-ом?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455391
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz vas03. Beehive
Расскажи.


Beehive создавался в BEA а потом они передали Apache в open source.
Появился он как надстройка над Struts 1.0. И он решал некоторые его проблемы.

1. В ту пору еще в Struts не было модулей, а был один неуправляемый файл struts-config.xml, наверна оттуда пошло выражение "metadata hell", так как для большого приложения были сотни action, form, forward и т.n

решение: ввели Conntroller, класс который описывает некоторый work flow, т.е добавляешь в него методы, каждый метод потом мапится на Action (на аснове анотаций). Так что управлять struts-config.xml не нужно, он потом сам собирается из controller-ов.

2. В Struts нет, поддежки на уровне модели.

решение: в beehive добавили Controls: abstractions for low-level J2EE resource APIs such as EJB, JMS, JDBC, and web services.

Недостатки:
Там создаються абстракные классы, из который потом на основе анотаций создаються конкретные (так было во всяком случае раньше, сейчас не знаю). Хотя у bea это было достаточно красиво сделано, но всетаки автогенерация это менее управляемая вещь.

Blazkowicz
Плох тот фреймверк для которого необходима интеграция с IDE. Хороший фреймверк интегрировать не надо, потому что он должен быть максимально близок к Java и HTML. С ними любая IDE справится. Ну и немного XML для связки.

Просто если начинаешь строить портальное приложение, то в рукопашную его достаточно геморойно создавать. Гораздо удобнее щеклнуть левой кнопочкой мыши, и опа... обернул work flow в портлет.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455456
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wessen
с каких это пор XSLT стал web framework-ом? вам шашечки или ехать? в этом вся фича! стандарт, поддерживаемый всеми вендорами или практически всеми, не зависит от J2EE, а решает те же задачи, бин -> html
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455527
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
am_sasa wessen
с каких это пор XSLT стал web framework-ом? вам шашечки или ехать? в этом вся фича! стандарт, поддерживаемый всеми вендорами или практически всеми, не зависит от J2EE, а решает те же задачи, бин -> html

XSLT это язык для преобразований, на вход можно подавать только XML, на выходе все, что угодно. Как можно такое сравнивать с web framework-ом ума не приложу :)
Как составляющую часть web framework-а XSLT представить можно, например - RenderKit для JSF использующий XSLT преобразования для генерации HTML.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455580
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz
Блин. А если в спецификации не написано то что??? По-моему ну её в пу такую спецификацию, к которой всегда что-то да не написано.

У тебя такая неприязнь ко всем спецификациям или только касательно entity ejb?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455613
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wessen
Как составляющую часть web framework-а XSLT представить можно, например - RenderKit для JSF использующий XSLT преобразования для генерации HTML. ну да.. согласен))) думаю, что это основная часть, к которой можно приделать остальное))
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455630
am_sasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wessen
У тебя такая неприязнь ко всем спецификациям или только касательно entity ejb? у меня никакой, но вот основной недостаток, на мой взгляд, в JSR168 - портлеты, там нет взаимодействия между ними!!! вендоры делают это соответственно зависимым, да и то не все... а такая нужная вещь!
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455647
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessen И если мой сервлет работает не так, как написано в спецификации, то ну ее в жпу такую реализацию и СП вместе сней.
Кстати о сервлетах. У меня тут тоже есть хороший пример недоработок в спецификации. Претензия конкретно к servlet url mapping. В далекие времена, кажется в WebSphere, url mapping был довольно крутой. С включениями исключениями и чуть ли даже не регэкспами. Уже точно не помню. Потом появилась спецификация Servlet 2.4 (или может даже более ранняя версия) и WebSpherу переделали на неё. И там теперь точно такой же убогий маппинг как и везде. Возможности исключения делать из маппинга - нет. Поэтому сейчас все извращаются с суффиксами (.form в примерах Sprnig MVC или .do в Struts)
А ведь сделать хотя бы что-то близкое к регулярным выражениям уже просят давно. А воз и ныне там. Все этим новым EJB/JSF заняты.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455721
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vas0Здесь я не согласен, не хотел бы я оказаться во временах когда не было J2EE. И каждый начинал придумывать свою безопастность, свою EJB, ... свой applicatin server. Ну или пойти еще дальше и отбрать стандарт SQL 92, что тогда делать то?
"Свою" безопасность уже придумали и все используют Acegis называется.
Свой EJB это Spring IoC + Spring вездесущая интеграция.
А сервер он и так у всех свой. 8)
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455736
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
am_sasaстандарт, поддерживаемый всеми вендорами или практически всеми, не зависит от J2EE, а решает те же задачи, бин -> html
Гы, ещё один со "стандартом". Вот только большинство фреймверков решают задачу Java - HTML, в то время как XSLT решает задачу Java -> XML -> HTML. И на кой тут лишняя и тормозная прослойка ещё тот вопрос.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34455760
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessenУ тебя такая неприязнь ко всем спецификациям или только касательно entity ejb?
Ко всем. Только "неприязнь" это субъективное. А у меня негативное отношение основаное на ряде фактов. ВСЕ спецификации жутко тормозят развитие платформы в целом. Субъективно около 80% спецификаций J2EE имеет слабые места и недоработки. Будем конкретно каждую перебирать?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34456070
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz Будем конкретно каждую перебирать?
А почему нет - вот к примеру jdbc. Еслиб не sun сейчас бы сидели на деревьях, притом каждый на своем...

ну еще jms - это конечно тоже великий тормоз! Этож так не удобно для программиста - один раз выучить и понять. Лучше чтоб у каждого вендора чего-нибудь свое было!

JTA - тоже фигня, про jmx куча подобных мелочей я вообще молчу.

Ну и спеки на JVM и язык тоже только тормозят. Даешь как в C++ - чтоб каждый производительно jvm чего нибудь свое прикрутил...

Вам, судя по всему, на microsoft.com надо - так так и делают...
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34456136
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
funikovyuri Blazkowicz Будем конкретно каждую перебирать?
А почему нет - вот к примеру jdbc.

Если конкретно про jdbc, то мне не нравиться там обработка исключений. Один вид исключений на все случаи жизни SQLException. И понять что же действительно произошло в jdbc это проблемма, есть конечно sqlCode, но он vendor specific и может от драйвера к драйверу поменяться.

А иногда все таки надо что же произошло, например: ошибка работы c ресурсами, ошибки оптимистической блокировки, синтаксические ошибки запроса, и т.п.

по моему только с jdbc 3.0 начался процесс стандартизации sql кодов.

А в Spring кстати хорошая иерархия DataAccessExceptions и все ошибки технологий (Jdbc, Hibernate, TopLink, Jdo) он пытаеться замапить на эту свою иерархию. Что в теории должно дать прозрачное переключение с одной технологии на другую с точко зрение обработки ошибок. Хотя конечно прозрачное переключение это миф.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34456190
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
funikovyuri Blazkowicz Будем конкретно каждую перебирать?
А почему нет - вот к примеру jdbc. Еслиб не sun сейчас бы сидели на деревьях, притом каждый на своем...
Ну и спеки на JVM и язык тоже только тормозят. Даешь как в C++ - чтоб каждый производительно jvm чего нибудь свое прикрутил...

Вам, судя по всему, на microsoft.com надо - так так и делают...

Идите лесом со своим чтением между строк. Речь конкретно о J2EE. Спецификации JDBC/JVM туда не входят. Хотя в разных списках о J2EE JDBC зачастую включают по неведомым причинам.


funikovyuriну еще jms - это конечно тоже великий тормоз! Этож так не удобно для программиста - один раз выучить и понять. Лучше чтоб у каждого вендора чего-нибудь свое было!

Как уже сказал выше JMS одно из немногих что продумано достаточно хорошо. По двум причинам. Это спецификация относительно простая и она не пытается покрыть все и вся.

funikovyuriJTA - тоже фигня, про jmx куча подобных мелочей я вообще молчу.
JTA к сожалению знаю поверхностно. И от его использования в принципе не отказываюсь. JMX братно не J2EE. Отдельная спецификация в себе.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34456706
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz funikovyuri Blazkowicz Будем конкретно каждую перебирать?
А почему нет - вот к примеру jdbc. ...

Идите лесом со своим чтением между строк. Речь конкретно о J2EE. Спецификации JDBC/JVM туда не входят. Хотя в разных списках о J2EE JDBC зачастую включают по неведомым причинам.

Ну так выражайтесь яснее... а то несколькими постами выше заявляли что так относитесь ко всем стандартам.

Blazkowicz
Как уже сказал выше JMS одно из немногих что продумано достаточно хорошо. По двум причинам. Это спецификация относительно простая и она не пытается покрыть все и вся.


Отлично, одна есть. Как любитель hibernate я думаю EJB3.0 тоже должны были приветствовать. И метод #lock() при всем уважении погоды тут не делает. Есть еще JavaMail, JCA и т.д. http://java.sun.com/javaee/technologies/

Действительно неудачной вещью были только EJB < 3 - но это проблема не стандартов как таковых, а вообще архитектуры которую тогда считали правильной.

Так или иначе, проблема любого стандарта в том что он делает ставку на определенное, не всегда в последствие верное, видиние проблемы. Если бы лет десять назад знали про persistence тоже что знают сейчас то Entity бинов бы просто не было. Но мы это знаем только сейчас благодаря таким продуктам как hibernate. Можно подумать что если просто отпустить возжи и перестать хоть что-то контролировать будет лучше. J2EE задает основной вектор для архитекторов и разработчиков. Да многие задачи в реальности решаются не совсем так как там написано - но основной то смысл остается. Нельзя делать выводы о вреде стандартов только на основе примеров типа spring и hibernate. Это скорее исключения, потому как проектов которые сейчас завершились провалом на порядки больше. Как еще без JCP и стандартизации можно сохранять хотябы направление развития? Кроме них, единственный путь который я знаю - это путь MS - он imho базируется на 2х вещах - 1. никогда не идти по непроверенному пути(т.е. никогда ничего не изобретать) 2) периодически начинать с нуля. Мне такое решение не нравиться намного больше чем некоторый overhead с открытыми спецификациями.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34456888
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
funikovyuriНу так выражайтесь яснее... а то несколькими постами выше заявляли что так относитесь ко всем стандартам.
Ну, так читайте весь трид а не отдельные предложения. Все стандарты замедляют развитие это раз. Стандарты до реализаций это зачастую зло - два. Конкретно J2EE спецификация имеет в себе целый ряд недоработок это три.

funikovyuriОтлично, одна есть. Как любитель hibernate я думаю EJB3.0 тоже должны были приветствовать. И метод #lock() при всем уважении погоды тут не делает.
Просто у меня уже нет никакого желанию копать EJB3 персистенс глубже после того что я вижу там нет нормально реализации пессимистичного лока. Я уверен кто уже начал писать крупный проект, может поделится остальными граблями.
Использовать же весь EJB3 тоже нет желания во-первых из-за ограниченной облати классов где работает инжекция, во-вторых из-за вездесущих аннотаций которые перегружают код. А так же показывают чудеса отсутствия гибкости в ряде ситуаций.

funikovyuriЕсть еще JavaMail, JCA и т.д. http://java.sun.com/javaee/technologies/
JavaMail достаточно убогое API, но все по привычке пользуются потому что альтернатив-то и нет. То же самое как с сервлетами. Разобратся их ещё можно до ума доводить ого-го.
JCA кто-то реально в проектах пользует?

funikovyuriДействительно неудачной вещью были только EJB < 3 - но это проблема не стандартов как таковых, а вообще архитектуры которую тогда считали правильной.
Как по мне EJB3 с JSF точно такая же неудача.

funikovyuriНельзя делать выводы о вреде стандартов только на основе примеров типа spring и hibernate.
Ой, можно подумать все мои утверждения выше только об этих двоих. Не надо мне приписывать то чего нет. Выше я уже привел так же ряд аргументов не имеющих отношения к этим двум решениям

funikovyuriКроме них, единственный путь который я знаю - это путь MS - он imho базируется на 2х вещах - 1. никогда не идти по непроверенному пути(т.е. никогда ничего не изобретать) 2) периодически начинать с нуля. Мне такое решение не нравиться намного больше чем некоторый overhead с открытыми спецификациями.
Opensource уже давно двигает Java гораздо больше J2EE. Если бы не opensource .NET бы уже отхватил гораздо большую порцию рынка.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457005
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторOpensource уже давно двигает Java гораздо больше J2EE. Если бы не opensource .NET бы уже отхватил гораздо большую порцию рынка.

Ну не знаю куда и кого он двигает... Opensource - это типа как игра жизнь - эволюция, которая не думаю развивается во всех направлениях сразу. Делать на него основную ставку нельзя, должен быть существовать процесс подводящий итоги и/или направляющий.

Imho Java вперед двигает именно стабильная и удобная базовая платформа. Используя java люди могут быть относительно уверенны в том что их решения не будут выброшены на следующий день по независящим от них причинам
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457143
seacat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Java поэтому и является очень удобной, потому что в ней достаточно равновесно учатствуют и opensource и разработчики стандартов-спецификаций. И если вглядеться, то эти направления постоянно стимулируют друг друга. Например разработчику Spring надоели ejb 2.x и он решил написать свое решение. Но идея IoC в самой простой реализации в ejb 2.x уже была, Род Джонсон сильно углубил и развил эту идею + создал классную архитектуру. Теперь идет обратный процесс, разработчики стандарта берут многое за основу из opensource.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457230
seacat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczТак вот. Взять к примеру какой-нить метод. EntityManager.lock. Я вот знаю, в случае хибера он ложиться на хибернейтовский метод lock который делает SELECT FOR UPDATE.
Но теперь я хочу портировать своё приложение с JBoss на Oracle AS. И скажи мне с пол пинка. Что буде происходить на TopLink с вызовом "стандартного" метода EntityManager.lock? А если чур в TopLink не заглядывать а попытатся разобратся по спецификации и EntityManager API doc?
Вот это-то и называется, здравтсуй жпа - новый год. Ты не знаешь что там реально происходит. И не сможешь угадать. И не сможешь предсказать заработает ли этот метод при переезде на другой сервер как тебе надо или нет.

Насколько я понимаю, вам не обязательно знать, какая реализация lock имеется у hibernate или toplink. Разве важно какими методами будет сделан этот самый лок? Главное чтобы результат соответствовал заявленному в спецификации.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457345
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
seacatНасколько я понимаю, вам не обязательно знать, какая реализация lock имеется у hibernate или toplink. Разве важно какими методами будет сделан этот самый лок? Главное чтобы результат соответствовал заявленному в спецификации.
EJB2 CMP потому и сдохли что никто не знал что на самом деле происходит в базе. А знание того что происходит в базе это сильное подспорье в борьбе за производительность.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457514
termit31
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz funikovyuriНу так выражайтесь яснее... а то несколькими постами выше заявляли что так относитесь ко всем стандартам.
Ну, так читайте весь трид а не отдельные предложения. Все стандарты замедляют развитие это раз. Стандарты до реализаций это зачастую зло - два. Конкретно J2EE спецификация имеет в себе целый ряд недоработок это три.

funikovyuriОтлично, одна есть. Как любитель hibernate я думаю EJB3.0 тоже должны были приветствовать. И метод #lock() при всем уважении погоды тут не делает.
Просто у меня уже нет никакого желанию копать EJB3 персистенс глубже после того что я вижу там нет нормально реализации пессимистичного лока. Я уверен кто уже начал писать крупный проект, может поделится остальными граблями.
Использовать же весь EJB3 тоже нет желания во-первых из-за ограниченной облати классов где работает инжекция, во-вторых из-за вездесущих аннотаций которые перегружают код. А так же показывают чудеса отсутствия гибкости в ряде ситуаций.

funikovyuriЕсть еще JavaMail, JCA и т.д. http://java.sun.com/javaee/technologies/
JavaMail достаточно убогое API, но все по привычке пользуются потому что альтернатив-то и нет. То же самое как с сервлетами. Разобратся их ещё можно до ума доводить ого-го.
JCA кто-то реально в проектах пользует?

funikovyuriДействительно неудачной вещью были только EJB < 3 - но это проблема не стандартов как таковых, а вообще архитектуры которую тогда считали правильной.
Как по мне EJB3 с JSF точно такая же неудача.

funikovyuriНельзя делать выводы о вреде стандартов только на основе примеров типа spring и hibernate.
Ой, можно подумать все мои утверждения выше только об этих двоих. Не надо мне приписывать то чего нет. Выше я уже привел так же ряд аргументов не имеющих отношения к этим двум решениям

funikovyuriКроме них, единственный путь который я знаю - это путь MS - он imho базируется на 2х вещах - 1. никогда не идти по непроверенному пути(т.е. никогда ничего не изобретать) 2) периодически начинать с нуля. Мне такое решение не нравиться намного больше чем некоторый overhead с открытыми спецификациями.
Opensource уже давно двигает Java гораздо больше J2EE. Если бы не opensource .NET бы уже отхватил гораздо большую порцию рынка.
Вот Вы так ругаете Java EE и другие стандарты. А что же Вы используете в реальных проектах?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34457515
seacat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz
EJB2 CMP потому и сдохли что никто не знал что на самом деле происходит в базе. А знание того что происходит в базе это сильное подспорье в борьбе за производительность.

Согласен.
Поэтому в JPA вы можете выбирать реализацию и этот выбор никак не связан с апп сервером. У нас сейчас на вебсфере используется toplink essential, но легко подставляется реализация от hibernate (проверяли, работает). Исходники, как известно, у обеих реализаций открыты. Так что JPA достаточно хороший стандарт, отвязывающий от конкретной реализации orm.
А вот с IoC в ejb3 действительно слабоват и пока альтернативы Spring нет.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34459072
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
seacatПоэтому в JPA вы можете выбирать реализацию и этот выбор никак не связан с апп сервером. У нас сейчас на вебсфере используется toplink essential, но легко подставляется реализация от hibernate (проверяли, работает). Исходники, как известно, у обеих реализаций открыты. Так что JPA достаточно хороший стандарт, отвязывающий от конкретной реализации orm.

Абсолютно не согласен. На кой использовать урезаную версию API к хиберу, когда он предоставляет гораздо более широкие возможности?
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34459370
seacat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczАбсолютно не согласен. На кой использовать урезаную версию API к хиберу, когда он предоставляет гораздо более широкие возможности?
Да по той же причине, по какой вы используете ограниченные возможности хибера, а не более широкие jdbc: отвязка от конкретной реализации orm и возможность выбора. Более того спец. возможности конечно используются, но только через wrapper. В случае смены реализации нужно будет переделать только wrapper, а не все те части кода, где используется orm.
...
Рейтинг: 0 / 0
Struts vs JSF vs Spring
    #34459926
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
seacatДа по той же причине, по какой вы используете ограниченные возможности хибера, а не более широкие jdbc: отвязка от конкретной реализации orm и возможность выбора. Более того спец. возможности конечно используются, но только через wrapper. В случае смены реализации нужно будет переделать только wrapper, а не все те части кода, где используется orm.
Какие-то не правомерные аналоги. JDBC тут причем? ORM это следующий уровень, а не как ни кастрированый API от JDBC. Вот EJB3 как раз и есть кастрированый API от Hibernate. А излишняя абстрагированность от всего ещё никому на пользу не пошла.
...
Рейтинг: 0 / 0
60 сообщений из 60, показаны все 3 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Struts vs JSF vs Spring
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]