Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему возникает NullPointerException при вызове persist / 25 сообщений из 46, страница 1 из 2
13.01.2014, 12:48
    #38524173
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
Доброго всем дня! Вопрос у меня в названии топика.
Привожу 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.
<entity class="com.bs.amg.test.File" name="File" metadata-complete="false">
	<table name="FILES"/>
	<attributes>
		<id name="id">
			<column name="ID" nullable="false"/>
			<generated-value strategy="SEQUENCE" generator="PK_FILES" />
		</id>
		<basic name="URI" optional="true">
			<column name="URI"/>
		</basic>
		<basic name="delimiter" optional="true">
			<column name="DELIMITER"/>
		</basic>
		<basic name="title">
			<column name="IS_TITLE"/>
		</basic>
		<basic name="colCount">
			<column name="COL_COUNT"/>
		</basic>
		<one-to-many name="columns" mapped-by="file" target-entity="com.bs.amg.test.FileColumn" fetch="LAZY">
			<cascade>
				<cascade-refresh/>
			</cascade>
		</one-to-many>
	</attributes>
</entity>



В коде делаю правильную инициализацию объекта 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.
@Stateless
public class Executer
{
    @PersistenceContext( unitName = "main_loader" )
    private EntityManager entityManager;

    private void saveFile( File file )
    {
        PrintWriter printWriter = new PrintWriter( "D:/error_logs.txt" );

	try
	{
		entityManager.persist( file );
	}
	catch( Exception ex )
	{
		ex.printStackTrace( printWriter );
	}
	finally
	{
		printWriter.close();
	}
    }
    
    public void createFile( String URI ) throws Exception
    {
	File file = File.getInstance( URI );
    }
}



в результате в "error_logs.txt" я получаю "java.lang.NullPointerException". Почему такое происходит?
...
Рейтинг: 0 / 0
13.01.2014, 12:54
    #38524183
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
entityManager не заинжектился?
...
Рейтинг: 0 / 0
13.01.2014, 12:54
    #38524185
0FD
0FD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
NDAleksey,

Привел бы полностью error_logs.txt, а так entityManager=null !!
...
Рейтинг: 0 / 0
13.01.2014, 12:54
    #38524186
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
не дописал чуток:
Код: java
1.
2.
3.
4.
5.
6.
    public void createFile( String URI ) throws Exception
    {
	File file = File.getInstance( URI ); // инициализация
        saveFile( file );
    }
}
...
Рейтинг: 0 / 0
13.01.2014, 12:57
    #38524193
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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)
...
Рейтинг: 0 / 0
13.01.2014, 13:03
    #38524212
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
Вопрос JEE инъекций aka CDI к вышеприведенному коду отношения не имеет.
Нужно смотреть как оно всё задеплоено и дескрипторы вроде persistence.xml и ejb-jar.xml.
...
Рейтинг: 0 / 0
13.01.2014, 13:05
    #38524214
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
Странно, конечно. Судя по stacktrace, бин нормально задеплоился. Тупо CDI не отработал.
...
Рейтинг: 0 / 0
13.01.2014, 13:08
    #38524220
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
BlazkowiczСтранно, конечно. Судя по stacktrace, бин нормально задеплоился. Тупо CDI не отработал.

я щас проверил entityManager на равенство null - он ему равен. ничего не понимаю, все деплоится, сущности в базе создаются, а он равен null - это как? у меня брешище в теории возможно, поэтому подскажите что не так?

p.s. вот persistence.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<persistence-unit name="main_loader" transaction-type="JTA">
	<jta-data-source>java:/orclDS</jta-data-source>
	<properties>
		<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>
		<property name="hibernate.hbm2ddl.auto" value="update"/>
		<property name="hibernate.show_sql" value="false"/>
	</properties>
</persistence-unit>
...
Рейтинг: 0 / 0
13.01.2014, 13:30
    #38524259
0FD
0FD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
NDAleksey,

а <persistence> и </persistence> специально вырезал или их нет вообще?
...
Рейтинг: 0 / 0
13.01.2014, 13:32
    #38524265
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
0FDNDAleksey,

а <persistence> и </persistence> специально вырезал или их нет вообще?

Вас это интересует?:

Код: xml
1.
2.
3.
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
			 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">...</persistence >
...
Рейтинг: 0 / 0
13.01.2014, 13:38
    #38524276
0FD
0FD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
NDAleksey,

Принимаю все буквально :) ,написано ведь "p.s. вот persistence.xml:", значит это весь persistence.xml. Ну если есть, хорошо.
...
Рейтинг: 0 / 0
13.01.2014, 13:47
    #38524288
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
0FDNDAleksey,

Принимаю все буквально :) ,написано ведь "p.s. вот persistence.xml:", значит это весь persistence.xml. Ну если есть, хорошо.

но у меня нет ejb-jar.xml. это смертельно? я просто еще слаб в теории и не знаю, что там нужно прописывать.)
...
Рейтинг: 0 / 0
13.01.2014, 14:58
    #38524426
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
товарищи дорогие, объясните, что я делаю не так?
- создал файл сущности;
- создал @Remote и @Stateless бины;
- все аккуратно собрал maven-ом и кинул в deployments;
- запустил AS: создались таблички в БД с последовательностями;
- создал клиента и через JNDI вызываю - работает, но при обращении к private полю entityManager ( при equals( null ) или toString() ) происходит NullPointerException.

почему он при deploy инициализируется нормально, а при обращении через удаленный вызов - нет?
...
Рейтинг: 0 / 0
13.01.2014, 15:30
    #38524509
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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.
...
Рейтинг: 0 / 0
13.01.2014, 15:31
    #38524512
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
BlazkowiczПишут интересное.

Oops. Тупанул. Показалось что в коде name, а там unitName. Всё верно.
...
Рейтинг: 0 / 0
13.01.2014, 15:31
    #38524517
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
Посмотрите лог деплоймента. Должен же он при создании session bean что-то написать.
...
Рейтинг: 0 / 0
13.01.2014, 15:47
    #38524563
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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 (только по голове не бить)
...
Рейтинг: 0 / 0
13.01.2014, 16:17
    #38524642
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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.
14:50:39,586 ERROR [org.jboss.ejb3.invocation] (EJB default - 1) JBAS014134: EJB Invocation failed on component CSVBean for method public abstract com.bs.amg.test.File com.bs.amg.test.bean.RemoteCSV.createFile(java.lang.String) throws java.lang.Exception: javax.ejb.EJBException: java.lang.NullPointerException
	at org.jboss.as.ejb3.tx.CMTTxInterceptor.handleExceptionInOurTx(CMTTxInterceptor.java:166) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:230) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:304) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:190) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.remote.EJBRemoteTransactionPropagatingInterceptor.processInvocation(EJBRemoteTransactionPropagatingInterceptor.java:80) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:43) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.invokeMethod(MethodInvocationMessageHandler.java:302) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.access$200(MethodInvocationMessageHandler.java:64) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler$1.run(MethodInvocationMessageHandler.java:196) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_25]
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_25]
	at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_25]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
	at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
	at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: java.lang.NullPointerException
	at com.bs.amg.test.acting.CSV_Creator.saveFile(CSV_Creator.java:64) [FinalModule-1.0-SNAPSHOT.jar:]
	at com.bs.amg.test.acting.CSV_Creator.createFile(CSV_Creator.java:107) [FinalModule-1.0-SNAPSHOT.jar:]
	at com.bs.amg.test.bean.CSVBean.createFile(CSVBean.java:28) [FinalModule-1.0-SNAPSHOT.jar:]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_25]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_25]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_25]
	at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_25]
	at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:36) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:53) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:1.1.1.Final]
	at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:228) [jboss-as-ejb3-7.1.1.Final.jar:7.1.1.Final]
	... 27 more



на нашем форуме тут увидел подобную проблему, но решения там так и не добыл... да и Jboss7-ой у меня и JNDI сипользую вместо @EJB
понимаю, что мне следует гуглить, но может кто знает готовое решение?)
...
Рейтинг: 0 / 0
13.01.2014, 16:22
    #38524654
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
JNDI lookup ведь на клиенте у вас? Влиять не на что не должно.
...
Рейтинг: 0 / 0
13.01.2014, 16:28
    #38524669
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
BlazkowiczJNDI lookup ведь на клиенте у вас? Влиять не на что не должно.

да. показать, как я настроил invoke?
...
Рейтинг: 0 / 0
13.01.2014, 16:34
    #38524690
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
По-пробуйте убрать unitName. Я уже фиг его знает. Должно работать.
...
Рейтинг: 0 / 0
13.01.2014, 16:35
    #38524691
0FD
0FD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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? или это базовый?
...
Рейтинг: 0 / 0
13.01.2014, 16:35
    #38524695
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
В порядке бреда попробуйте вместо EntityManager заинжектить EntityManagerFactory.
...
Рейтинг: 0 / 0
13.01.2014, 16:53
    #38524732
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
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.
@Remote
public interface RemoteCSV
{
	public File createFile( String URI ) throws Exception;
}

@Stateless
public class CSVBean implements RemoteCSV
{
	@Override
	public File createFile( String URI ) throws Exception
	{
		return new CSV_Creator().createFile( URI );
	}
}

@Stateless
public class CSV_Creator extends DefaultActor implements Actor
{
	@PersistenceContext( unitName = "main_loader" )
	private EntityManager entityManager;
	
	private File saveFile( File file ) throws Exception
	{
		PrintWriter printWriter = new PrintWriter( "D:/error_logs.txt" );

		try
		{
			entityManager.persist( file );
		}
		catch( Exception ex )
		{
			ex.printStackTrace( printWriter );
		}
		finally
		{
			printWriter.close();
		}

		return file;
	}
}



если реально так делать нельзя, то не подскажите, как логику оставить ту же (чтобы вся работа с Entity производилась в CSV_Creator), а вызов шел через CSVBean?
...
Рейтинг: 0 / 0
13.01.2014, 16:56
    #38524741
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему возникает NullPointerException при вызове persist
NDAleksey
Код: java
1.
		return new CSV_Creator().createFile( URI );



facepalm

NDAlekseyесли реально так делать нельзя, то не подскажите, как логику оставить ту же (чтобы вся работа с Entity производилась в CSV_Creator), а вызов шел через CSVBean?
Тоже инжектить через @EJB, а не создавать экземпляры самостоятельно. Контейнер ничего не знает о ваших экземплярах. Наивно полагать что он вот так просто найдёт любой созданый вами экземпляр класса и магическим образом добавить в него значения полей.

JEE, как всегда, к новичкам задом. :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему возникает NullPointerException при вызове persist / 25 сообщений из 46, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]