Отказ от ответственности: Я новичок в Java EE и до недавнего времени не работал с EJB, поэтому простите меня, если я неправильно использую некоторые термины или выражения.Почему EJB дают мне nullpointerexception при использовании с JavaFX?
Я работаю над простым приложением с использованием Java EE и EJB. Мне нужно получить доступ к EJB во время работы приложения. Если я правильно понял, вы объявляете бобы, как это:
@EJB
private ProgressBeanRemote progressBean;
Однако, если я пытаюсь получить доступ к компоненту внутри приложения, как это:
System.out.println(progressBean.getSomeValue());
Я получаю следующее сообщение об ошибке:
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at project.name.TestClass.java:10
Теперь мне кажется, что JVM видит progressBean как поле без экземпляра и, следовательно, генерирует исключение nullpointerexception. Однако невозможно (и не имеет смысла) создавать новый объект bean-компонента, поскольку он действительно удаленный. Помимо этого у меня не так много. Итак, мой вопрос: Как я могу получить доступ к bean-компонентам внутри запущенного приложения JavaFX?
ПРИМЕЧАНИЕ. Я тестировал свое приложение как обычную программу Java (без GUI), а затем он работает. Также я использую JDK 1.8 и Java EE 7.
EDIT: Я знаю, что такое NullPointerException, я просто не понимаю, почему удаленный доступ не распознается, когда я пытаюсь получить к нему доступ из JavaFX.
Возможный дубликат [Что такое Исключение нулевого указателя и как его исправить?] (Http://stackoverflow.com/questions/218384/what-is-a-null-pointer-exception-and-how -do-i-fix-it) –
Я не согласен с дублирующимся звонком. Именно поэтому EJB загружаются неправильно из приложения JavaFX. –