Главная » Статьи для тега "компонент"

Доступ к службам HTTP Invoker Spring

Добавлено Дата: 5 August, 2014 категория: Spring

Рискуя напомнить заезженную пластинку, я все же должен со- общить, что пользование службой HTTP Invoker очень напоминает все, что было показано выше. Как показано на рис. 11.9, компонент HttpInvokerProxyFactoryBean играет ту же роль, что и другие прокси- объекты удаленных служб, представленные выше в этой главе.

Читать »

Интеграция Spring Web Flow с другими фреймворками

Добавлено Дата: 30 July, 2014 категория: Spring

В этой главе мы занимались созданием веб-приложения на осно- ве фреймворка Spring Web Flow, входящего в состав Spring MVC. Однако, возможно, кому-то будет интересно узнать, что Spring Web

Flow не требует обязательного использования Spring MVC. Факти- чески фреймворк Spring Web Flow обладает встроенной поддержкой следующих фреймворков:

Читать »

Создание WSDL-файлов Spring

Добавлено Дата: 23 July, 2014 категория: Spring

Наконец, я собираюсь выполнить свое обещание и показать, от- куда берется WSDL-файл с определением веб-службы оценки ком- бинации карт при игре в покер. В разделе 15.2.1 мы уже определили формат представления данных в виде схемы на языке XML Schema, в файле PokerTypes.xsd. Прежде чем двинуться дальше, вернитесь к листингу 15.1, чтобы освежить в памяти, как выглядит определе- ние формата представления данных.

Читать »

Создание  «осведомленных» компонентов Spring

Добавлено Дата: 17 July, 2014 категория: Spring

Вы видели фильм «Матрица»? В этом фильме люди были неволь- но порабощены машинами, жили своими каждодневными жизнями в виртуальном мире, в то время как суть их жизни состояла в том, чтобы обеспечить машины энергией. Главному персонажу Томасу Андерсону (Thomas Anderson) был дан выбор – принять красную пилюлю и узнать всю правду о своем существовании или принять синюю пилюлю и продолжить прежнюю жизнь. Он выбрал красную и сделался осведомленным о своей реальной личности и о виртуаль- ном мире.

Читать »

Внедрение ресурсов с помощью аннотации Spring

Добавлено Дата: 8 July, 2014 категория: Spring

Для иллюстрации использования аннотаций EJB 3 с помощью Pitchfork вернемся к примеру класса рыцаря из главы 1. Представь- те, что нам необходимо переписать класс BraveKnight из главы 1 и задействовать аннотацию @Resource для внедрения зависимости. Это можно сделать, как показано в листинге 16.2.

Читать »

Использование веб-служб Spring-WS

Добавлено Дата: 5 July, 2014 категория: Spring

В главе 11 было показано, как можно использовать компонент JaxWsPortProxyFactoryBean для создания клиентов, взаимодействующих с удаленными веб-службами. Но там удаленные веб-службы интер- претировались как удаленные объекты, чьи методы можно вызывать локально. В этой же главе мы говорим о веб-службах, основанных на обмене сообщениями, когда клиент отправляет веб-службе и при- нимает в ответ XML-сообщения. Иная парадигма на стороне служ- бы требует использования иной парадигмы на стороне клиента. Для этой цели служит класс WebServiceTemplate из фреймворка Spring-WS. WebServiceTemplate  – это основа клиентского API в Spring-WS. Как показано на рис. 15.10, для реализации отправки и приема XML-сообщений он использует шаблон проектирования «Шаблон» (Template). Мы уже встречались с этим шаблоном проектирования в главе 6, когда знакомились с особенностями реализации уровня

Читать »

Внедрение в свойства компонентов, управляемых  сценариями Spring

Добавлено Дата: 30 June, 2014 категория: Spring

Чтобы проиллюстрировать, как реализовать внедрение значений в свойства компонента, управляемого сценарием, перевернем наш пример с лаймом и кокосом с ног на голову. На этот раз кокосом будет компонент, управляемый сценарием, а лаймом – POJO. Сна- чала рассмотрим Java-класс, реализующий интерфейс Lime:

Читать »

Экспортирование службы с  помощью  Hessian/Burlap Spring

Добавлено Дата: 28 June, 2014 категория: Spring

Как и прежде, предположим, что в качестве службы необходи- мо экспортировать функциональность, реализованную в классе SpitterServiceImpl, но на этот раз с применением технологии Hessian. В этом нет ничего сложного, даже без использования возможностей фреймворка Spring. Достаточно определить класс службы, расши- ряющий класс com.caucho.hessian.server.HessianServlet, и сделать все методы API службы общедоступными (в Hessian все общедоступные методы считаются методами службы).

Читать »

Транзакции JDBC Spring

Добавлено Дата: 26 June, 2014 категория: Spring

Если для хранения данных в приложении предполагается ис- пользовать простой механизм JDBC, для управления транзакция- ми должен использоваться диспетчер DataSourceTransactionManager. Для этого необходимо добавить определение компонента DataSource- TransactionManager в контекст приложения, как показано ниже:

Читать »

Установка Spring Web Flow

Добавлено Дата: 21 June, 2014 категория: Spring

Несмотря на то что Spring Web Flow является частью проекта Spring Framework, это расширение не входит в состав Spring Frame- work непосредственно. То есть, прежде чем приступать к созданию диалоговых приложений, выполняющих операции в определенной последовательности, необходимо добавить расширение Spring Web Flow в библиотеку классов (classpath) приложения.

Читать »

Автоматическое связывание свойств компонентов Spring

Добавлено Дата: 21 June, 2014 категория: Spring

Если я скажу: «Сегодня луна особенно яркая», – едва ли у кого- то возникнет вопрос: «Какая луна?», – потому что мы с вами жи- тели Земли, и в данном контексте всем очевидно, что я говорю о Луне – единственном спутнике Земли. Если бы мы с вами были жителями Юпитера, вы наверняка захотели бы уточнить, о каком из 63 естественных спутников идет речь. Но на Земле моя фраза звучит более чем однозначно1. Аналогично, когда дело доходит до автоматического связывания свойств компонентов, очевидно, ссыл- ка на какой компонент должна быть внедрена в данное свойство. Если в контексте приложения имеется только один компонент типа javax.sql.DataSource, тогда любой компонент, имеющий свойство ти- па DataSource, будет зависеть именно от этого компонента DataSource. В конце концов, это единственный компонент такого типа.

Читать »

Использование внедрения методов чтения Spring

Добавлено Дата: 21 June, 2014 категория: Spring

Внедрение через метод чтения – это особый случай внедрения ме- тодов, когда объявляется метод (обычно абстрактный), возвращаю- щий компонент определенного типа, но фактически возвращаемый компонент определяется в контексте Spring.

Для иллюстрации рассмотрим новую форму класса Instrumentalist

Читать »

Механизм RPC, основанный на сообщениях, в Lingo Spring

Добавлено Дата: 17 June, 2014 категория: Spring

Lingo1 – это механизм удаленных взаимодействий, основанный на фреймворке Spring и напоминающий механизм JMS Invoker в Spring. Фактически в документации Javadoc с описанием классов JMS Invoker библиотека Lingo упоминается косвенно, как образец для подражания2.

Читать »

Использование RMI Spring

Добавлено Дата: 11 June, 2014 категория: Spring

Имеющие достаточно продолжительный опыт разработки прило- жений на языке Java наверняка слышали (и, возможно, использова- ли) механизм вызова удаленных методов (Remote Method Invocation, RMI). Поддержка RMI, впервые появившаяся в JDK 1.1, обеспе- чивает широкие возможности удаленных взаимодействий между программами на языке Java. До появления поддержки RMI Java- программистам был доступен единственный механизм удаленных взаимодействий – CORBA (требовавший приобретения стороннего брокера объектных запросов (Object Request Broker, ORB)), иначе приходилось опускаться на низкий уровень и заниматься програм- мированием сокетов.

Читать »

Внедрение компонентов EJB в Spring

Добавлено Дата: 8 June, 2014 категория: Spring

Компоненты сеансов, определяемые спецификацией EJB 3, – это всего лишь объекты, хранящиеся в репозитории JNDI, подобно лю- бым другим объектам в JNDI. Поэтому элемент <jee:jndi-lookup> можно с успехом использовать для получения компонентов сеанса EJB 3. Но как быть, если потребуется внедрить в контекст прило- жения компонент сеанса EJB 2?

Читать »