|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
nullvoid : 505 Постоянный посетитель Откуда: Красноярск
|
Ноя 12, 2011 20:15 |
|
|
|
|
|
|
 |
vimba : 147 Новичок Откуда: Шахты
|
Ноя 12, 2011 20:22 |
|
|
| Конкретно есть, что сказать? Тебе не понравилось Spring интеграционный фреймворк предоставляющий свободу мысли, действия, кода, рефакторинга. Так оспорь в чем проблема? Какая технология по твоему предоставляет большую свободу? |
|
|
|
 |
nullvoid : 505 Постоянный посетитель Откуда: Красноярск
|
Ноя 12, 2011 20:37 |
|
|
| Цитата: |
Spring интеграционный фреймворк предоставляющий свободу мысли, действия, кода, рефакторинга
|
О чем тут можно спорить? Высказывание ни о чем.
Моя философия: спринги, ежб и прочие хрени это всего лишь инструменты. Возьмем лопату - ей можно копать а можно колбасу нарезать а можно людей на вечный покой отправлять.
О какой свободе мысли, действия, кода, рефакторинга идет речь я не понимаю.
Я ни о чем не хочу спорить, мне просто надоела эта реклама. _________________ http://LinguaLeo.ru/r/8b3o08 |
|
|
|
 |
vimba : 147 Новичок Откуда: Шахты
|
Ноя 12, 2011 21:46 |
|
|
| nullvoid писал(а): |
| Цитата: |
Spring интеграционный фреймворк предоставляющий свободу мысли, действия, кода, рефакторинга
|
О чем тут можно спорить? Высказывание ни о чем.
Моя философия: спринги, ежб и прочие хрени это всего лишь инструменты. Возьмем лопату - ей можно копать а можно колбасу нарезать а можно людей на вечный покой отправлять.
О какой свободе мысли, действия, кода, рефакторинга идет речь я не понимаю.
Я ни о чем не хочу спорить, мне просто надоела эта реклама. |
Не надо вертеться как уж на сковородке, как человек использовавший спринг ты всё прекрасно понимаешь, и то что ты свободен иметь множественную реализацию одного интерфейса, и множество по разному сконфигурированных интстансов одной реализации в одном приложении и инжектить зависимости классы которых вообще ничего о ынтерпрайз не знали, и возможность инжектить массивы, мапы, списки и.т.д., в общем в отличие от ежей как хочешь так и пишешь а спринг за тебя всё это соберёт, о всём об этом ты прекрасно осведомлён, но продалжаешь выпендриваться, понятно что, это возрастное и это пройдёт, но это не повод забредать во все темы где увидел слово Spring и устраивать там срачи, лучше ответь на вопросы топик стартера, толку от тебя больше будет. |
|
|
|
 |
Vermut : 1062 Завсегдатай Откуда: Ростов-на-Дону
|
Ноя 12, 2011 22:13 |
|
|
| WertLex писал(а): |
У меня скорее вопрос.
А как можно использовать _одновременно_ оба интерфейса?
|
Легко, просто берешь и используешь, давить на то что архитетурно это вакханалия не стоит, так как весь EJB это садом и гомора.
| WertLex писал(а): |
Т.е. Remote работает через RMI далеко-далеко. Local работает только на сервере... но ведь их нельзя использовать по-очереди в контейнере обращаясь к одному бину, так ведь? Поэтому получается, что нет необходимости в двух интерфейсах для одного бина, ведь так или иначе работа происходит либо с Remote, либо с Local, а следовательно, это могли бы быть различные бины.
Вот о чем я думаю.
|
Ты правильно думаешь, но пока в качестве Remote используется только RMI твои размышления избыточны.
| WertLex писал(а): |
Собственно вот еще вопрос, касательно EJB, который меня давно мучает. А почему нет возможности использовать не RMI, а скажем какой-либо другой менее платформозависимый RPC? Поясню откуда ноги растут: тут рядом тема есть, как я хлебнул горя с CORBA и сериализацией. Выход найден с помощью костыля, но первопричина так и не решена. Если бы это был, скажем, JSON, на данные можно было бы хоть глазами посмотреть, а тут.. даже не знаю куда и копать.
|
Отсутствие возможности вызвать бин удаленно по нестандартным протоколам навеянно только отсутствием знаний о open source фреймворках таких как hessian, Burlap, HttpInvoke, которые Oracle не спешит рекламировать, но наличие же этих фреймворков позволяет вызывать Local Stateless Bean практически из любого языка программирования C#, JavaScript, Action Script/Flex/Flash, Php, Objective C и.т.д. Правда с маленькой поправкой без spring прозрачной маршрутизации не получиться придется писать код, но так как spring стандарт де-факто и входит в каждое современное приложение, то считаю что ужаснахи связанными с вызовом EJB по нестандартному протоколу надуманными и высосанными из пальца. _________________ Познакомлюсь с привлекательной Ростовчанкой для совместного изучения Java
Последний раз редактировалось: Vermut (Ноя 12, 2011 22:26), всего редактировалось 1 раз |
|
|
|
 |
nullvoid : 505 Постоянный посетитель Откуда: Красноярск
|
Ноя 12, 2011 22:18 |
|
|
to vimba
1. Мне 27,5 годиков, проблем с прыщами вроде не имел.
Остальное не в обиду будет сказано, но относится к личности:
2. Учи OOAD - долго курил твои слова, из предыдущего поста, пытался понять их смысл и пришел к выводу то что ты привел в пример, это из-за не очень четкого понимания объектной парадигмы. Сорри если обидел.
3. Давно сделан EJB 3.1 подозреваю, что ты в примере приводишь доводы и указываешь на недостатки технологии ejb, которые были в старых версиях.
4. Не вижу в 99% случаев, что можно сделать на спринге легко и просто и чего нельзя в EJB и наоборот. _________________ http://LinguaLeo.ru/r/8b3o08 |
|
|
|
 |
vimba : 147 Новичок Откуда: Шахты
|
Ноя 12, 2011 22:34 |
|
|
| nullvoid писал(а): |
to vimba
1. Мне 27,5 годиков, проблем с прыщами вроде не имел.
Остальное не в обиду будет сказано, но относится к личности:
2. Учи OOAD |
Что конкретно не так с OOAD, только прошу тебя уже третий раз в этой теме говори конкретно, иначе просто вынужден буду жаловаться на тебя в администрацию как на троля. |
|
|
|
 |
WertLex : 93 Новичок
|
Ноя 13, 2011 8:18 |
|
|
2 Vermut:
| Цитата: |
WertLex писал(а):
У меня скорее вопрос.
А как можно использовать _одновременно_ оба интерфейса?
Легко, просто берешь и используешь, давить на то что архитетурно это вакханалия не стоит, так как весь EJB это садом и гомора.
|
А подробнее можно? Есть у меня метод, который отдает пользователю Remote бин, но перед этим ему необходим передать пару параметров, о которых пользователь бина знать не должен. Я думаю логично было бы это сделать через локальный интерфейс, а пользователю отдать удаленный. Но как это сделать? Я ведь не могу никаким образом по локальному интерфейсу получить его удаленный, чтобы отдать потом пользователю.
За hessian, Burlap, HttpInvoke спасибо. |
|
|
|
 |
Vermut : 1062 Завсегдатай Откуда: Ростов-на-Дону
|
Ноя 13, 2011 9:01 |
|
|
Так сделать невозможно и не нужно. В EJB 2.x для этой цели предназначены Home интерфейсы через которые можно было создавать бины с различными параметрами, в EJB 3.x их спрятали, но они ни куда не делись ими можно пользоваться
| Код: |
public interface MyBeanHome extends EJBHome {
public MyBean create(String param1, String param2)
throws CreateException, RemoteException;
}
public interface MyBeanRemote extends EJBObject {
public void doSomething() throws RemoteException;
}
@Stateless
@RemoteHome(MyBeanHome .class)
public class MyBean {
private String param1;
private String param2;
@Init
public void create(String param1, String param2) {
this.param1 = param1;
this.param2 = param2;
}
public void doSomething() {
...
}
}
|
Соответсвенно клиент этого бина будет выглядеть так
| Код: |
InitialContext ctx = new InitialContext();
Object o = ctx.lookup(MyBeanHome.class.getName());
MyBeanHome myBeanHome = (MyBeanHome) PortableRemoteObject.narrow(o, MyBeanHome .class);
MyBeanRemote myBean = myBeanHome.create("param1", "param2");
myBean.doSomething();
|
_________________ Познакомлюсь с привлекательной Ростовчанкой для совместного изучения Java |
|
|
|
 |
Skipy : 4801 Я тут живу! Откуда: Москва, Россия
|
Ноя 14, 2011 11:08 |
|
|
| vimba писал(а): |
| Конкретно есть, что сказать? Тебе не понравилось Spring интеграционный фреймворк предоставляющий свободу мысли, действия, кода, рефакторинга. Так оспорь в чем проблема? Какая технология по твоему предоставляет большую свободу? |
Какая технология? Легко. Java. БЕЗ Spring. Максимальная свобода действий, НИКАКИХ ограничений. То есть абсолютно. А Spring как фреймворк предполагает определенное направление действий. И если я захочу пойти перпендикулярно этому направлению - встречусь со сложностями. Проходили.
Любой фреймворк предполагает упрощение решения задачи, для которой он предназначен, с одновременным усложнением решения задач, для которых он не предназначен. Spring не исключение. И точно так же Java упрощает создание большого класса приложений, но вот, увы, сетевой трафик на нем не пофильтруешь. А на С++ - легко. Зато на С++ переносимые приложения создавать - адский геморрой. И т.д. и т.п.
Spring - не панацея. У нас вон, группа товарищей создала новый UI-фреймворк на базе Spring. Этой поделкой просто невозможно пользоваться. То есть абсолютно. Сложность разработки возрасла в разы. В итоге проект закрыли, команду разогнали. _________________ С уважением,
Евгений aka Skipy
www.skipy.ru
P.S. Я НЕ решаю задачи ЗА других! |
|
|
|
 |
|
|
|