Привет, Виктор, не более подробно относительно вашего приложения. Я собираюсь предположить, что вы работаете в контейнере сервлетов. Невозможно сделать это с помощью «чистого» приложения JAX-RS.
Однако я бы рекомендовал использовать CDI (Weld или OpenWebBeans). Затем вы можете использовать Deltaspike, чтобы включить контекст запроса в вашем задании Quartz, чтобы получить ссылку на компонент с включенным запросом.
Включение Weld в вашем контейнере сервлетов довольно simple
Руководство по включению контекст запроса вне запроса HTTP доступна here
По умолчанию вы можете не вводить @RequestScoped бобы в свой кварцевой работу (там не является HTTP-запросом, поэтому не существует контекста запроса). Чтобы обойти это, вы можете либо включить контекст запроса, указав ссылку выше OR (и, возможно, мой подход), вставьте @Dependent бобы (которые выполняют работу) в ваши JAX RS-компоненты (в основном обертки), вы можете легко получить ссылки к объектам @Dependent, включенным в ваше кварцевое задание.
Вот мои web.xml и pom.xml для запуска Weld и Jersey внутри причала, вам понадобятся причал, плюс-джи и Weld зависимости.
Вот некоторые info о получении установки JNDI в причалу, однако я не использую этот метод, как я начинаю причалом в качестве встроенного контейнера внутри приложения SE, вот фрагмент кода, что я делаю:
String[] configurationClasses =
{
"org.eclipse.jetty.webapp.WebInfConfiguration",
"org.eclipse.jetty.webapp.WebXmlConfiguration",
"org.eclipse.jetty.webapp.MetaInfConfiguration",
"org.eclipse.jetty.webapp.FragmentConfiguration",
"org.eclipse.jetty.plus.webapp.EnvConfiguration",
"org.eclipse.jetty.webapp.JettyWebXmlConfiguration"
};
WebAppContext webapp = new WebAppContext();
webapp.setConfigurationClasses(configurationClasses);
webapp.setDescriptor("/path/to/webapp/WEB-INF/web.xml");
webapp.setContextPath("/");
webapp.setResourceBase("/path/to/webapp");
webapp.setClassLoader(Thread.currentThread().getContextClassLoader());
Виктор, вы хотите, чтобы @ Ввести задания в свои другие бобы? – Justin
Нет, наоборот. Мне в основном нужен регистратор и DAO на работе. –