Какие из следующих утверждений являются верными:
JMS
возможно только совместно с Sun Application Server
 
JMS
возможно совместно с любым JMS
-провайдером, совместимым со спецификацией 
JMS
возможно с любой службой очередей, причем никаких дополнительных интерфейсов и шлюзов - не требуется 
Какие из следующих утверждений являются верными:
JMS
взаимодействие между компонентами может быть асинхронным 
JMS
компонент может оправить сообщение, которое получат несколько получателей 
JMS
компонент не может отправить сообщение самому себе 
Какие из следующих утверждений являются верными:
JMS
отправитель и получатель сообщения на момент отправки сообщения должны быть оба запущены 
JMS
подразумевает существование посредника (сервиса очередей) между отправителем и получателем сообщений 
JMS
осуществляется в асинхронном режиме 
Какие из следующих утверждений являются верными:
Какие из следующих утверждений являются верными:
Какие из следующих утверждений являются верными:
Аннотация @Resource(mappedName="jms/ConnectionFactory")
:
ConnectionFactory
и помещает ссылку на него в JNDI
 
JNDI
-именем jms/ConnectionFactory
и связывает его с переменной, к которой относится аннотация 
jms/ConnectionFactory
 
Какие из следующих утверждений являются верными:
@Resource(mappedName="jms/ConnectionFactory")
, соответствующий объект ConnectionFactory
должен быть создан 
@Resource(mappedName="jms/ConnectionFactory")
относится к классу, реализующему прием сообщений из очереди с именем jms/ConnectionFactory
 
@Resource(mappedName="jms/ConnectionFactory")
должна относиться к переменной типа ConnectionFactory
 
Аннотация @Resource(mappedName="jms/Queue")
:
Queue
и помещает ссылку на него в JNDI
 
JNDI
-именем jms/Queue
и связывает его с переменной, к которой относится аннотация 
jms/Queue
 
Какие из следующих утверждений являются верными:
@Resource(mappedName="jms/Queue")
, соответствующий объект Queue
должен быть создан 
@Resource(mappedName="jms/Queue")
относится к классу, реализующему прием сообщений из очереди с именем jms/Queue
 
@Resource(mappedName="jms/Queue")
должна относиться к переменной типа Queue
 
Соединение сJMS
-провайдером в классеJMSClient
осуществляется в строке (листинг программы):
Какие типы сообщений поддерживаются в JMS
:
Какие из следующих утверждений являются верными:
ObjectMessage
, необходимо чтобы передаваемые данные были сериализуемых типов 
ObjectMessage
, необходимо чтобы в классах, объекты которых передаются, все поля были объявлены как public
 
ObjectMessage
, необходимо чтобы в классах, объекты которых передаются, не содержалось объявлений методов (только полей) 
В какой строчке кода осуществляется чтение сообщения клиента:
1 package com.asw.jms.ex1; 2 3 import javax.jms.*; 4 import javax.annotation.Resource; 5 import java.io.InputStreamReader; 6 import java.io.IOException; 7 import java.util.Hashtable; 8 import java.util.Enumeration; 9 10 public class BillingService { 11 @Resource(mappedName = "jms/ConnectionFactory") 12 private static ConnectionFactory connectionFactory; 13 @Resource(mappedName = "jms/Queue") 14 private static Queue queue; 15 16 Hashtable hash = new Hashtable(); 17 public void addNewCard(Card c) { 18 hash.put(c.cardNumber, c); 19 }; 20 21 public void performCardOperation(CardOperation co){ 22 Card c = (Card)hash.get(co.card); 23 if (c==null) return; 24 c.balance+=co.amount; 25 hash.put(co.card,c); 26 }; 27 28 public void printCards(){ 29 for(Enumeration e = hash.elements();e.hasMoreElements();) 30 System.out.println(e.nextElement()); 31 } 32 33 public static void main(String[] args) { 34 String destType = null; 35 Connection connection = null; 36 Session session = null; 37 Destination dest = (Destination) queue; 38 MessageConsumer consumer = null; 39 ObjectListener listener = null; 40 TextMessage message = null; 41 InputStreamReader inputStreamReader = null; 42 char answer = '\0'; 43 try { 44 connection = connectionFactory.createConnection(); 45 session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); 46 consumer = session.createConsumer(dest); 47 listener = new ObjectListener(new BillingService()); 48 consumer.setMessageListener(listener); 49 connection.start(); 50 System.out.println( 51 "To end program, type Q or q, " + "then <return>"); 52 inputStreamReader = new InputStreamReader(System.in); 53 while (!((answer == 'q') || (answer == 'Q'))) { 54 try { 55 answer = (char) inputStreamReader.read(); 56 } catch (IOException e) { 57 System.err.println("I/O exception: " + e.toString()); 58 } 59 } 60 } catch (JMSException e) { 61 System.err.println("Exception occurred: " + e.toString()); 62 } finally { 63 if (connection != null) { 64 try { 65 connection.close(); 66 } catch (JMSException e) { 67 } 68 } 69 } 70 } 71 }
В каком порядке должен осуществляться запуск примера сBillingClient
иBillingService
:
BillingClient
должен быть запущен Sun Application Server
(либо любой другой JMS
-провайдер), сначала запускается BillingClient
, затем BillingService
 
BillingService
должен быть запущен Sun Application Server
(либо любой другой JMS
-провайдер), сначала запускается BillingService
, затем BillingClient
 
BillingClient
, затем, Sun Application Server
и под его управлением - BillingService
 
Какие утилиты, входящие в составJDK
, используются при компиляцииBillingClient
иBillingService
:
javac
 
javac
и wsimport
 
javac
и jmsgen
 
С помощью каких утилит, входящих в составSun Application Server
, осуществляется запускBillingClient
иBillingService
: