|
|
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
Доброго всем дня! Вопрос у меня в названии топика. Привожу entity из orm.xml: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. В коде делаю правильную инициализацию объекта File (мой класс) и потом вызываю метод сохранения записи в БД: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. в результате в "error_logs.txt" я получаю "java.lang.NullPointerException". Почему такое происходит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 12:48 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
entityManager не заинжектился? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 12:54 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAleksey, Привел бы полностью error_logs.txt, а так entityManager=null !! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 12:54 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
не дописал чуток: Код: java 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 12:54 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczentityManager не заинжектился? да! 0FDNDAleksey, Привел бы полностью error_logs.txt, а так entityManager=null !! я думаю, что мой лог может слегка запутать, ибо весь код я тут не изложил, но раз народ требует, то вот: java.lang.NullPointerException at com.bs.amg.test.acting.CSV_Creator.saveFile(CSV_Creator.java:70) at com.bs.amg.test.acting.CSV_Creator.createFile(CSV_Creator.java:99) at com.bs.amg.test.bean.CSVBean.createFile(CSVBean.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:36) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:53) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:228) at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:304) at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:190) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.remote.EJBRemoteTransactionPropagatingInterceptor.processInvocation(EJBRemoteTransactionPropagatingInterceptor.java:80) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:43) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.invokeMethod(MethodInvocationMessageHandler.java:302) at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.access$200(MethodInvocationMessageHandler.java:64) at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler$1.run(MethodInvocationMessageHandler.java:196) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) at org.jboss.threads.JBossThread.run(JBossThread.java:122) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 12:57 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
Вопрос JEE инъекций aka CDI к вышеприведенному коду отношения не имеет. Нужно смотреть как оно всё задеплоено и дескрипторы вроде persistence.xml и ejb-jar.xml. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:03 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
Странно, конечно. Судя по stacktrace, бин нормально задеплоился. Тупо CDI не отработал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:05 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczСтранно, конечно. Судя по stacktrace, бин нормально задеплоился. Тупо CDI не отработал. я щас проверил entityManager на равенство null - он ему равен. ничего не понимаю, все деплоится, сущности в базе создаются, а он равен null - это как? у меня брешище в теории возможно, поэтому подскажите что не так? p.s. вот persistence.xml: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:08 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAleksey, а <persistence> и </persistence> специально вырезал или их нет вообще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:30 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
0FDNDAleksey, а <persistence> и </persistence> специально вырезал или их нет вообще? Вас это интересует?: Код: xml 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:32 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAleksey, Принимаю все буквально :) ,написано ведь "p.s. вот persistence.xml:", значит это весь persistence.xml. Ну если есть, хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:38 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
0FDNDAleksey, Принимаю все буквально :) ,написано ведь "p.s. вот persistence.xml:", значит это весь persistence.xml. Ну если есть, хорошо. но у меня нет ejb-jar.xml. это смертельно? я просто еще слаб в теории и не знаю, что там нужно прописывать.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 13:47 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
товарищи дорогие, объясните, что я делаю не так? - создал файл сущности; - создал @Remote и @Stateless бины; - все аккуратно собрал maven-ом и кинул в deployments; - запустил AS: создались таблички в БД с последовательностями; - создал клиента и через JNDI вызываю - работает, но при обращении к private полю entityManager ( при equals( null ) или toString() ) происходит NullPointerException. почему он при deploy инициализируется нормально, а при обращении через удаленный вызов - нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 14:58 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAlekseyпочему он при deploy инициализируется нормально, Кто "он"? Persistent Unit иницализировался это одно NDAlekseyа при обращении через удаленный вызов - нет? А вот CDI не произвел Inject это другое. Какая версия JEE ? Я вот ещё в JavaDoc заглянул. http://docs.oracle.com/javaee/6/api/javax/persistence/PersistenceContext.html Пишут интересное. RTFM name (Optional) The name by which the entity manager is to be accessed in the environment referencing context; not needed when dependency injection is used . unitName (Optional) The name of the persistence unit as defined in the persistence.xml file. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 15:30 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПишут интересное. Oops. Тупанул. Показалось что в коде name, а там unitName. Всё верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 15:31 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
Посмотрите лог деплоймента. Должен же он при создании session bean что-то написать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 15:31 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczКто "он"? Persistent Unit иницализировался это одно "Expresses a dependency on a container-managed EntityManager and its associated persistence context." entityManager... по сути он ассоциируется с persistence context BlazkowiczNDAlekseyа при обращении через удаленный вызов - нет? А вот CDI не произвел Inject это другое. Какая версия JEE ? 6-я BlazkowiczЯ вот ещё в JavaDoc заглянул. http://docs.oracle.com/javaee/6/api/javax/persistence/PersistenceContext.html Пишут интересное. RTFM name (Optional) The name by which the entity manager is to be accessed in the environment referencing context; not needed when dependency injection is used . unitName (Optional) The name of the persistence unit as defined in the persistence.xml file. вот тут я не понял.... unitName инициализируется же... если не сложно, то укажите, где проявляется DI (только по голове не бить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 15:47 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПосмотрите лог деплоймента. Должен же он при создании session bean что-то написать. Объяснись сразу с "предметной областью". Есть com.bs.amg.test.File - собственно @Entity com.bs.amg.test.bean.RemoteCSV - @Remote com.bs.amg.test.acting.CSV_Creator - @SessionBean Соответственно вот что возникает при invoke замечательного createFile(java.lang.String) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. на нашем форуме тут увидел подобную проблему, но решения там так и не добыл... да и Jboss7-ой у меня и JNDI сипользую вместо @EJB понимаю, что мне следует гуглить, но может кто знает готовое решение?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:17 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
JNDI lookup ведь на клиенте у вас? Влиять не на что не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:22 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
BlazkowiczJNDI lookup ведь на клиенте у вас? Влиять не на что не должно. да. показать, как я настроил invoke? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:28 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
По-пробуйте убрать unitName. Я уже фиг его знает. Должно работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:34 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAleksey, По стеку, у Вас com.bs.amg.test.File - собственно @Entity com.bs.amg.test.bean.RemoteCSV - @Remote com.bs.amg.test.acting.CSVBean - @SessionBean (а не CSV_Creator) т.е. CSVBean implemetns RemoteCSV, как тогда создается CSV_Creator? или это базовый? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:35 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
В порядке бреда попробуйте вместо EntityManager заинжектить EntityManagerFactory. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:35 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
0FDNDAleksey, По стеку, у Вас com.bs.amg.test.File - собственно @Entity com.bs.amg.test.bean.RemoteCSV - @Remote com.bs.amg.test.acting.CSVBean - @SessionBean (а не CSV_Creator) т.е. CSVBean implemetns RemoteCSV, как тогда создается CSV_Creator? или это базовый? ааа... народ, я нереально натупил.... у меня из одного сессионного бина вызывается "экземпляр" другого... как-то так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. если реально так делать нельзя, то не подскажите, как логику оставить ту же (чтобы вся работа с Entity производилась в CSV_Creator), а вызов шел через CSVBean? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:53 |
|
||
|
Почему возникает NullPointerException при вызове persist
|
|||
|---|---|---|---|
|
#18+
NDAleksey Код: java 1. facepalm NDAlekseyесли реально так делать нельзя, то не подскажите, как логику оставить ту же (чтобы вся работа с Entity производилась в CSV_Creator), а вызов шел через CSVBean? Тоже инжектить через @EJB, а не создавать экземпляры самостоятельно. Контейнер ничего не знает о ваших экземплярах. Наивно полагать что он вот так просто найдёт любой созданый вами экземпляр класса и магическим образом добавить в него значения полей. JEE, как всегда, к новичкам задом. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2014, 16:56 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38524654&tid=2127816]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
186ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
95ms |
get tp. blocked users: |
2ms |
| others: | 212ms |
| total: | 546ms |

| 0 / 0 |
