Hello. I have an application that runs on Karaf 3.0.3 and would like to migrate to Karaf 4.0.1. The main problem I have with the migration of data service: I do not get that blueprint inject the EntityManager.
*This is my pom:* <artifactId>dataService</artifactId> <version>0.0.1</version> <packaging>bundle</packaging> <name>DataBaseService</name> <description>Servicio de base de datos.</description> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>2.5.4</version> <extensions>true</extensions> <inherited>true</inherited> <configuration> <instructions> <Bundle-SymbolicName>salazarDB</Bundle-SymbolicName> <Bundle-Version>${project.version}</Bundle-Version> <Meta-Persistence>META-INF/persistence.xml</Meta-Persistence> <Export-Package> es.salazaryasociados.db.*;version=${project.version} </Export-Package> <Import-Package> * </Import-Package> <Dynamic-Import-Package>*, org.hibernate.proxy, javassist.util.proxy</Dynamic-Import-Package> <excludeDependencies> </excludeDependencies> </instructions> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jpa_2.0_spec</artifactId> <version>1.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5.0.3.Final</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.inject</groupId> <artifactId>javax.inject</artifactId> <version>1</version> <optional>true</optional> </dependency> <dependency> <groupId>javax.transaction</groupId> <artifactId>javax.transaction-api</artifactId> <version>1.2</version> </dependency> </dependencies> *And this is the definition of the service:* <?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:jpa="http://aries.apache.org/xmlns/jpan/v1.0.0" xmlns:tx="http://aries.apache.org/xmlns/transactions/v1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <jpa:enable/> <service ref="dataService" interface="es.salazaryasociados.db.service.IDataService" /> <bean id="dataService" class="es.salazaryasociados.db.service.DataService"> <property name="fileDao" ref="fileDao"/> <property name="clientDao" ref="clientDao"/> <property name="responsableDao" ref="responsableDao"/> <property name="userDao" ref="userDao"/> <property name="pagoDao" ref="pagoDao"/> <property name="documentoDao" ref="documentDao"/> <tx:transaction method="*" value="Required" /> </bean> <bean id="clientDao" class="es.salazaryasociados.db.control.ClientDao"> </bean> <bean id="fileDao" class="es.salazaryasociados.db.control.ExpedienteDao"> </bean> <bean id="responsableDao" class="es.salazaryasociados.db.control.ResponsableDao"> </bean> <bean id="userDao" class="es.salazaryasociados.db.control.UserDao"> </bean> <bean id="pagoDao" class="es.salazaryasociados.db.control.PagoDao"> </bean> <bean id="documentDao" class="es.salazaryasociados.db.control.DocumentoDao"> </bean> </blueprint> And finally the class: @Transactional public class DataService implements IDataService { private ClientDao clientDao; private ExpedienteDao fileDao; private ResponsableDao responsableDao; private UserDao userDao; private PagoDao pagoDao; private DocumentoDao documentoDao; @PersistenceContext(unitName="salazarJPA") EntityManager entityManager; public EntityManager getEntityManager() { return entityManager; } public void setEntityManager(EntityManager entityManager) { this.entityManager = entityManager; } I've been mulling over time and can not see why not inject the EntityManager blueprint. Can you help me? Thank you. -- View this message in context: http://karaf.922171.n3.nabble.com/Migration-to-Karaf-4-0-1-tp4042982.html Sent from the Karaf - User mailing list archive at Nabble.com.