<?xml version="1.0" encoding="UTF-8" standalone="no"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd "> <tx:annotation-driven transaction-manager="jpaTxManager"/> <bean id="jpa" class="org.apache.camel.component.jpa.JpaComponent"> <property name="entityManagerFactory" ref="entityManagerFactory"/> <property name="transactionManager" ref="jpaTxManager"/> </bean> <bean id="jpaTxManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory"/> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean"> <property name="persistenceUnitName" value="p_amit"/> </bean> <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL" value="tcp://127.0.0.1:61616" /> </bean> <bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory"> <property name="maxConnections" value="10" /> <property name="maximumActiveSessionPerConnection" value="10" /> <property name="connectionFactory" ref="jmsConnectionFactory" /> </bean> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory" ref="pooledConnectionFactory" /> </bean> <bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration"> <property name="connectionFactory" ref="pooledConnectionFactory" /> <property name="transacted" value="true" /> <property name="concurrentConsumers" value="15" /> <property name="deliveryPersistent" value="true" /> <property name="requestTimeout" value="10000" /> <property name="cacheLevelName" value="CACHE_CONSUMER" /> </bean> <bean id="jms" class="org.apache.camel.component.jms.JmsComponent"> <property name="configuration" ref="jmsConfig" /> </bean> <camelContext trace="true" xmlns="http://camel.apache.org/schema/spring"> <route> <from uri="jms:queue:REQUESTQ_BANK1?concurrentConsumers=1& maxConcurrentConsumers=1& asyncConsumer=true"/> <transform> <simple>${in.body} ****** DATA ENRICHEMENT OVER HERE ****** </simple> </transform> <bean ref="myDataEnrichment" method="doTransform"/> <setHeader headerName="JMSCorrelationID"> <simple resultType="String">${headers.JMSMessageID}</simple> </setHeader> <to uri="jms:queue:RESPONSEQ_BANK1"/> <setHeader headerName="JMSCorrelationID"> <simple resultType="String">${headers.JMSMessageID}</simple> </setHeader> <to uri="jms:queue:DBCheckPointQ" /> </route> <route> <from uri="jms:queue:DBCheckPointQ?concurrentConsumers=1& maxConcurrentConsumers=1& asyncConsumer=true"/> <transform> <method ref="orderBean" method="generateOrder"/> </transform> <bean ref="orderService" method="insertOrder" /> </route> </camelContext> <bean id="orderBean" class="entity.OrderBean" /> <bean id="myDataEnrichment" class="service.PinBlockVerification" /> <bean id="orderService" class="service.OrderService"> <property name="entityManagerFactory" ref="entityManagerFactory"/> </bean> </beans> @Component public class OrderService { @PersistenceContext(unitName="p_amit") EntityManager entityManager; EntityManagerFactory entityManagerFactory; @Transactional public void insertOrder(Order order) { System.out.println("****** Entity Manager ********** == " + entityManager); // System.out.println("****** Entity Manager Factory********** == " + entityManagerFactory); // entityManagerFactory.createEntityManager().persist(order); entityManager.persist(order); } public void testService(String body) { System.out.println( " \n ****** AMIT TESTING SERVICE ********** == \n" + body); } } <?xml version="1.0" encoding="UTF-8" ?> <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" version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"> <persistence-unit name="p_amit" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <class>entity.Order</class> <properties> <property name="javax.persistence.jdbc.driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" /> <property name="javax.persistence.jdbc.url" value="jdbc:sqlserver://172.25.0.32;databaseName=PRE30" /> <property name="javax.persistence.jdbc.user" value="sa" /> <property name="javax.persistence.jdbc.password" value="sqlserver#123" /> <property name="hibernate.connection.autocommit" value="false" /> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.hbm2ddl.auto" value="none" /> <property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect" /> </properties> </persistence-unit> </persistence> -- View this message in context: http://camel.465427.n5.nabble.com/entity-manager-is-injected-as-null-in-a-camel-bean-but-jpa-endpoint-works-fine-tp5775308.html Sent from the Camel - Users mailing list archive at Nabble.com.