Я новичок в Seam. Я использую службы Rest и в одном из своих сервисов отдыха я пытаюсь получить экземпляр Component, например,
GateAction gateAction = (GateAction) Component.getInstance(GateAction.class, true);
Таким образом, с этим я получил ошибку java.lang.IllegalStateException: нет активного контекста приложения
то для решения этого я вызываю Lifecycle.beginCall() и Lifecycle.endCall(), как показано ниже,
Lifecycle.beginCall();
GateActionIntf gateAction = (GateActionIntf) Component.getInstance(GateActionImpl.class, true);
Lifecycle.endCall();
где GateActionIntf является интерфейсом, а GateActionImpl является компонентом шва, который реализует GateActionIntf. Но теперь я получаю ClassCastException.
Примечание. В моем проекте веб-службы у меня нет никакой конфигурации с компонентами.xml и швов, я только что добавил jboss-seam jar
Возможно ли получить такой экземпляр без конфигурации компонента.xml и швов? Опять же, просто подсвечивая, я получаю экземпляр, но в то время как тип casting бросает ClassCastException. как это решить?
Попробуйте следующее:
GateActionIntf gateAction = (GateActionImpl) Component.getInstance(GateActionImpl.class, true);