2013-09-16 1 views
0

Я создал источник данных внутри JBoss-7.1.1 \ автономного \ Конфигурация \ standalone.xmlНе удается создать диспетчер сущностей, Jboss7, liferay 6.0, oracle datasource?

<datasource jta="true" jndi-name="java:jboss/datasources/POSPool" pool-name="POSPool" enabled="true" use-java-context="true" use-ccm="true"> 
       <connection-url>Connection url here</connection-url> 
       <driver>oracle</driver> 
       <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation> 
       <pool> 
        <prefill>true</prefill> 
        <use-strict-min>false</use-strict-min> 
        <flush-strategy>FailingConnectionOnly</flush-strategy> 
       </pool> 
       <security> 
        <user-name>username</user-name> 
        <password>password</password> 
       </security> 
      </datasource> 
      <drivers> 
       <driver name="oracle" module="com.oracle.ojdbc6"> 
        <xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class> 
       </driver> 
      </drivers> 

presistance.xml был:

<?xml version="1.0" encoding="UTF-8"?> 
     <persistence version="1.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_1_0.xsd"> 
      <persistence-unit name="Khadamate-Services-JPAPU" transaction-type="JTA"> 
      <provider>org.hibernate.ejb.HibernatePersistence</provider> 
      <jta-data-source>java:jboss/datasources/POSPool</jta-data-source> 
      <exclude-unlisted-classes>false</exclude-unlisted-classes> 
       <properties> 
        <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/> 
       </properties> 
      </persistence-unit> 
     </persistence> 

Я попытался получить менеджер компании, но это дает exceptyion java.lang.NullPointerException:

HashMap<String, String> properties = new HashMap<String, String>(); 
     properties.put("ConnectionDriverName", "oracle.jdbc.OracleDriver"); 
     entityManagerFactory = Persistence.createEntityManagerFactory("Khadamate-Services-JPAPU", properties); 

StackTrace:

06:40:03,810 INFO [stdout] (http--0.0.0.0-8888-5) Caused by: javax.servlet.ServletException: java.lang.NullPointerException 

06:40:03,816 INFO [stdout] (http--0.0.0.0-8888-5) at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535) 

06:40:03,837 INFO [stdout] (http--0.0.0.0-8888-5) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433) 

06:40:03,845 INFO [stdout] (http--0.0.0.0-8888-5) at com.liferay.portal.struts.PortletRequestProcessor.processActionPerform(PortletRequestProcessor.java:441) 

06:40:03,865 INFO [stdout] (http--0.0.0.0-8888-5) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 

06:40:03,873 INFO [stdout] (http--0.0.0.0-8888-5) at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:224) 

06:40:03,881 INFO [stdout] (http--0.0.0.0-8888-5) at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:274) 

06:40:03,900 INFO [stdout] (http--0.0.0.0-8888-5) ... 196 more 

06:40:03,906 INFO [stdout] (http--0.0.0.0-8888-5) Caused by: java.lang.NullPointerException 

06:40:03,913 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.getStatus(JtaStatusHelper.java:73) 

06:40:03,928 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.isActive(JtaStatusHelper.java:115) 

06:40:03,936 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.engine.transaction.internal.jta.CMTTransaction.join(CMTTransaction.java:149) 

06:40:03,945 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.ejb.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:1207) 

06:40:03,955 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.ejb.AbstractEntityManagerImpl.postInit(AbstractEntityManagerImpl.java:176) 

06:40:03,965 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.ejb.EntityManagerImpl.<init>(EntityManagerImpl.java:89) 

06:40:03,973 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:125) 

06:40:03,982 INFO [stdout] (http--0.0.0.0-8888-5) at org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:120) 

06:40:03,992 INFO [stdout] (http--0.0.0.0-8888-5) at com.khdt.eservices.core.fdBusinessService.getEntityManager(fdBusinessService.java:30) 

06:40:04,001 INFO [stdout] (http--0.0.0.0-8888-5) at com.khdt.eservices.core.fdBusinessService.getTopRankedServices(fdBusinessService.java:48) 

06:40:04,014 INFO [stdout] (http--0.0.0.0-8888-5) at com.khdt.rankedServices.action.RankedServicesViewAction.render(RankedServicesViewAction.java:45) 

06:40:04,034 INFO [stdout] (http--0.0.0.0-8888-5) at com.liferay.portal.struts.PortletAction.execute(PortletAction.java:111) 

06:40:04,042 INFO [stdout] (http--0.0.0.0-8888-5) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 

06:40:04,051 INFO [stdout] (http--0.0.0.0-8888-5) ... 200 more 
+0

Показать полный трассировки стека –

+0

Это лучше, чтобы добавить его в свой пост и формат надлежащим образом –

+0

хорошо сделано, жаль что –

ответ

0

Я думаю, вам просто нужно указать, что в спящий режим поддержка jta предоставляется jboss. Добавьте это в persistence.xml:

<property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform" /> 
+0

Спасибо, это сработало. –

Смежные вопросы