Java Persistence API определяет интерфейс Query. Какие два утверждения о методе Query.executeUpdate являются верными?
Варианты ответа:
1) Произойдёт IllegalStateException, если метод был вызван на объекте Query, созданном с указанием запроса SELECT
2) Произойдёт PersistenceException, если не была обновлена ни одна сущность (entity).
3) Он должен всегда выполняться в границах транзакции.
4) Все управляемые сущности (managed entity objects), соответствующие обновлённым записям в базе, синхронизируют свои данные в соответствии с обновлением.
Java Persistence API определяет интерфейс Query. Какие два утверждения о методе Query.executeUpdate являются верными?
Варианты ответа:
1) Произойдёт IllegalStateException, если метод был вызван на объекте Query, созданном с указанием запроса SELECT
2) Произойдёт PersistenceException, если не была обновлена ни одна сущность (entity).
3) Он должен всегда выполняться в границах транзакции.
4) Все управляемые сущности (managed entity objects), соответствующие обновлённым записям в базе, синхронизируют свои данные в соответствии с обновлением.
Какие два варианта неверно отражают кратность связи между сущностями?
Какие два варианта неверно отражают кратность связи между сущностями?
Какой единственный компонент является необязательным в корпоративном EJB-приложении?
Какой единственный компонент является необязательным в корпоративном EJB-приложении?
Выберите единственное верное высказывание о MDB.
Варианты ответа:
1) Экземпляр MDB будет обрабатывать сообщения из JMS-очереди (queue) в порядке появления их в очереди
2) Все экземпляры MDB получат все сообщения из очереди
3) Только один поток выполнения (thread) будет выполнять метод обработки сообщений у экземпляра MDB
4) Разработчик должен позаботиться о сигнализации о завершении обработки (acknowledgement) сообщения в случае программно-управляемых транзакций (bean-managed transactions)
Выберите единственное верное высказывание о MDB.
Варианты ответа:
1) Экземпляр MDB будет обрабатывать сообщения из JMS-очереди (queue) в порядке появления их в очереди
2) Все экземпляры MDB получат все сообщения из очереди
3) Только один поток выполнения (thread) будет выполнять метод обработки сообщений у экземпляра MDB
4) Разработчик должен позаботиться о сигнализации о завершении обработки (acknowledgement) сообщения в случае программно-управляемых транзакций (bean-managed transactions)
Дан код:
public class Employee {
public String name;
}
@Entity
public class FullTimeEmployee extends Employee {
@Id
public long empID;
public long salary;
}
Какие поля образуют сохраняемое состояние сущности FullTimeEmployee?
Дан код:
public class Employee {
public String name;
}
@Entity
public class FullTimeEmployee extends Employee {
@Id
public long empID;
public long salary;
}
Какие поля образуют сохраняемое состояние сущности FullTimeEmployee?
Выберите два верных высказывания о бизнес-интерфейсах EJB3-компонентов.
Варианты ответа:
1) Удаленный бизнес-интерфейс должен наследоваться от java.rmi.Remote
2) При описании бизнес-интерфейса не обязательно указывать, является он локальным или удаленным
3) Бизнес-интерфейс не должен наследоваться от javax.ejb.EJBObject или javax.ejb.EJBLocalObject
4) Методы, задекларированные в удаленном бизнес-интерфейсе, обязаны выбрасывать исключение java.rmi.RemoteException
Выберите два верных высказывания о бизнес-интерфейсах EJB3-компонентов.
Варианты ответа:
1) Удаленный бизнес-интерфейс должен наследоваться от java.rmi.Remote
2) При описании бизнес-интерфейса не обязательно указывать, является он локальным или удаленным
3) Бизнес-интерфейс не должен наследоваться от javax.ejb.EJBObject или javax.ejb.EJBLocalObject
4) Методы, задекларированные в удаленном бизнес-интерфейсе, обязаны выбрасывать исключение java.rmi.RemoteException
Выберите единственную верную комбинацию высказываний из приведенных.
Высказывание 1: Клиент посылает сообщение MDB, получив его бизнес-интерфейс из сервиса именования JNDI
Высказывание 2: Клиент посылает сообщение в JMS-хранилище (destination), ссылку на которое он получает из сервиса именования JNDI
Варианты ответа:
1) Оба высказывания неверны
2) Высказывание 1 — верное, Высказывание 2 — неверное
3) Высказывание 1 — неверное, Высказывание 2 — верное
4) Оба высказывания верны
Выберите единственную верную комбинацию высказываний из приведенных.
Высказывание 1: Клиент посылает сообщение MDB, получив его бизнес-интерфейс из сервиса именования JNDI
Высказывание 2: Клиент посылает сообщение в JMS-хранилище (destination), ссылку на которое он получает из сервиса именования JNDI
Варианты ответа:
1) Оба высказывания неверны
2) Высказывание 1 — верное, Высказывание 2 — неверное
3) Высказывание 1 — неверное, Высказывание 2 — верное
4) Оба высказывания верны
Приложение успешно собирается, но не деплоится на сервере.
Как можно изменить следующий код для исправления ошибки (отметьте все возможные варианты)?
@Named
@SessionScope
public class MyBackingBean {
//......
}
Варианты ответа:
1)
@Named
@RequestScope
public class MyBackingBean {
//......
}
2)
@Named
@SessionScope
public class MyBackingBean implements Serializable {
//......
}
3)
@Named
@SessionScope
public static final class MyBackingBean {
//......
}
4)
@Named
@SessionScope
public final class MyBackingBean {
//......
}
Приложение успешно собирается, но не деплоится на сервере.
Как можно изменить следующий код для исправления ошибки (отметьте все возможные варианты)?
@Named
@SessionScope
public class MyBackingBean {
//......
}
Варианты ответа:
1)
@Named
@RequestScope
public class MyBackingBean {
//......
}
2)
@Named
@SessionScope
public class MyBackingBean implements Serializable {
//......
}
3)
@Named
@SessionScope
public static final class MyBackingBean {
//......
}
4)
@Named
@SessionScope
public final class MyBackingBean {
//......
}
Какое единственное высказывание из приведенных верно?
Варианты ответа:
1) MDB может поддерживать сессионное состояние клиента
2) Клиент может вызвать метод, проаннотированный как @Remove, для уничтожения экземпляра MDB
3) Клиент не может получить прямую локальную ссылку на MDB
4) Клиент может получить прямую удаленную ссылку на MDB
5) Клиент может контролировать жизненный цикл экземпляра MDB
Какое единственное высказывание из приведенных верно?
Варианты ответа:
1) MDB может поддерживать сессионное состояние клиента
2) Клиент может вызвать метод, проаннотированный как @Remove, для уничтожения экземпляра MDB
3) Клиент не может получить прямую локальную ссылку на MDB
4) Клиент может получить прямую удаленную ссылку на MDB
5) Клиент может контролировать жизненный цикл экземпляра MDB
Выберите два сервиса или API, которые контейнер обязан предоставлять разработчику EJB-компонентов:
Выберите два сервиса или API, которые контейнер обязан предоставлять разработчику EJB-компонентов:
Выберите единственно верный порядок вызовов методов у Stateful Session EJB:
Выберите единственно верный порядок вызовов методов у Stateful Session EJB:
Выберите одно верное высказывание о JPA Entities.
Варианты ответа:
1) Класс обязательно должен иметь public конструктор без параметров
2) JPA и Entity Manager не требуют наличия EJB-контейнера
3) Класс Entity должен быть сериализуемым (serializable)
4) Первичный ключ может быть как примитивного типа, так и классом
Выберите одно верное высказывание о JPA Entities.
Варианты ответа:
1) Класс обязательно должен иметь public конструктор без параметров
2) JPA и Entity Manager не требуют наличия EJB-контейнера
3) Класс Entity должен быть сериализуемым (serializable)
4) Первичный ключ может быть как примитивного типа, так и классом
Компоненты Stateful Session EJB работают под большой нагрузкой. Для повышения масштабируемости было принято решение использовать механизм пассивизации/активизации. Какое единственное высказывание верно?
Варианты ответа:
1) Метод, проаннотированный @PrePassivate, будет вызван однозначно чаще, чем метод, проаннотированный @PostActivate
2) Метод, проаннотированный @PostPassivate, будет вызван однозначно чаще, чем метод, проаннотированный @PreActivate
3) Методы, проаннотированные @PostPassivate и @PreActivate, будут вызваны строго равное число раз
4) Ничего из перечисленного не верно
Компоненты Stateful Session EJB работают под большой нагрузкой. Для повышения масштабируемости было принято решение использовать механизм пассивизации/активизации. Какое единственное высказывание верно?
Варианты ответа:
1) Метод, проаннотированный @PrePassivate, будет вызван однозначно чаще, чем метод, проаннотированный @PostActivate
2) Метод, проаннотированный @PostPassivate, будет вызван однозначно чаще, чем метод, проаннотированный @PreActivate
3) Методы, проаннотированные @PostPassivate и @PreActivate, будут вызваны строго равное число раз
4) Ничего из перечисленного не верно
Выберите два правильных высказывания с точки зрения разработчика EJB.
Варианты ответа:
1) EJB не должен передавать другим компонентам приложения ссылку на себя в виде ссылки this
2) Класс реализации EJB не должен наследоваться от других java-классов
3) Компонентам EJB следует использовать статические переменные для обмена данными между экземплярами (bean instances)
4) Компоненты EJB не должны создавать новые потоки выполнения (threads)
Выберите два правильных высказывания с точки зрения разработчика EJB.
Варианты ответа:
1) EJB не должен передавать другим компонентам приложения ссылку на себя в виде ссылки this
2) Класс реализации EJB не должен наследоваться от других java-классов
3) Компонентам EJB следует использовать статические переменные для обмена данными между экземплярами (bean instances)
4) Компоненты EJB не должны создавать новые потоки выполнения (threads)
Клиент посылает сообщение, обрабатываемое MDB. Какое единственное из приведенных высказываний верное?
Варианты ответа:
1) Клиент находит MDB в сервисе именования JNDI и посылает ему сообщение напрямую
2) Клиент напрямую вызывает MDB с уточнением, что вызов должен быть обработан асинхронно
3) Клиент ничего не знает об MDB, который будет обрабатывать его запрос
4) Клиент воспользуется специальной фабрикой (factory) MDB для получения нужного объекта
5) Клиент получает бизнес-интерфейс MDB из сервиса именования и вызывает методы
Клиент посылает сообщение, обрабатываемое MDB. Какое единственное из приведенных высказываний верное?
Варианты ответа:
1) Клиент находит MDB в сервисе именования JNDI и посылает ему сообщение напрямую
2) Клиент напрямую вызывает MDB с уточнением, что вызов должен быть обработан асинхронно
3) Клиент ничего не знает об MDB, который будет обрабатывать его запрос
4) Клиент воспользуется специальной фабрикой (factory) MDB для получения нужного объекта
5) Клиент получает бизнес-интерфейс MDB из сервиса именования и вызывает методы
Выберите единственный сервис или API, который контейнер не обязан предоставлять разработчику EJB-компонентов:
Выберите единственный сервис или API, который контейнер не обязан предоставлять разработчику EJB-компонентов:
Для каких из перечисленных аннотаций может быть указан элемент optional?
Для каких из перечисленных аннотаций может быть указан элемент optional?
Клиент получает ссылку на EJB Session Object. Какое единственное высказывание, касающееся жизненного цикла EJB, из приведенных верно?
Варианты ответа:
1) Клиент может удалить экземпляр (bean instance) stateless session EJB, вызвав метод у session object. При этом клиент не может таким же образом удалить экземпляр stateful session EJB.
2) Клиент может удалить экземпляр stateful session EJB, вызвав метод у session object. При этом клиент не может таким же образом удалить экземпляр stateless session EJB.
3) Клиент может удалить экземпляр stateless session EJB, вызвав метод у session object. При этом клиент может таким же образом удалить экземпляр stateful session EJB.
4) Клиент не может удалить экземпляр stateless session EJB, вызвав метод у session object. При этом клиент так же не может таким же образом удалить экземпляр stateful session EJB.
Клиент получает ссылку на EJB Session Object. Какое единственное высказывание, касающееся жизненного цикла EJB, из приведенных верно?
Варианты ответа:
1) Клиент может удалить экземпляр (bean instance) stateless session EJB, вызвав метод у session object. При этом клиент не может таким же образом удалить экземпляр stateful session EJB.
2) Клиент может удалить экземпляр stateful session EJB, вызвав метод у session object. При этом клиент не может таким же образом удалить экземпляр stateless session EJB.
3) Клиент может удалить экземпляр stateless session EJB, вызвав метод у session object. При этом клиент может таким же образом удалить экземпляр stateful session EJB.
4) Клиент не может удалить экземпляр stateless session EJB, вызвав метод у session object. При этом клиент так же не может таким же образом удалить экземпляр stateful session EJB.
Какое единственное из требований заставит разработчика использовать именно Stateless Session EJB вместо Stateful Session EJB?
Варианты ответа:
1) Компонент будет взаимодействовать с БД для обработки пользовательских запросов
2) Компонент будет использоваться веб-сервисными клиентами
3) Компонент будет использовать JTA-транзакции
4) Компоненту будет необходимо реагировать на события своего жизненного цикла (напр. создание)
Какое единственное из требований заставит разработчика использовать именно Stateless Session EJB вместо Stateful Session EJB?
Варианты ответа:
1) Компонент будет взаимодействовать с БД для обработки пользовательских запросов
2) Компонент будет использоваться веб-сервисными клиентами
3) Компонент будет использовать JTA-транзакции
4) Компоненту будет необходимо реагировать на события своего жизненного цикла (напр. создание)
Какое утверждение о entity manager является верным?
Варианты ответа:
1) Entity manager, полученный путём внедрения ресурса в stateful session бин может использовать resource-local EntityTransaction для управления транзакциями.
2) Entity manager управляемый контейнером должен использовать JTA.
3) Entity manager, созданный вызовом метода EntityManagerFactory.createEntityManager всегда использует контроль транзакций JTA.
4) Entity manager внедрённый в сессионные бины может использовать как JTA так и resource-local контроль транзакций.
Какое утверждение о entity manager является верным?
Варианты ответа:
1) Entity manager, полученный путём внедрения ресурса в stateful session бин может использовать resource-local EntityTransaction для управления транзакциями.
2) Entity manager управляемый контейнером должен использовать JTA.
3) Entity manager, созданный вызовом метода EntityManagerFactory.createEntityManager всегда использует контроль транзакций JTA.
4) Entity manager внедрённый в сессионные бины может использовать как JTA так и resource-local контроль транзакций.