Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Configuration
- @ComponentScan
- @EnableAutoConfiguration
- public class Application {
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
- }
- @Controller
- public class GetController {
- private static final String PERSISTENCE_UNIT_NAME = "cpJpaPu";
- @RequestMapping(value = "/user", method = RequestMethod.GET)
- public @ResponseBody User getUser(@RequestParam(value="id", required=true) int id) {
- User user = null;
- EntityManagerFactory emf = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
- EntityManager em = emf.createEntityManager();
- UserDAO userDao = new UserDAO();
- userDao.setEntityManager(em);
- user = userDao.load(id);
- return user;
- }
- }
- public class UserDAO {
- public EntityManager entityManager;
- public void setEntityManager(EntityManager entityManager) {
- this.entityManager = entityManager;
- }
- public EntityManager getEntityManager() {
- return entityManager;
- }
- public void insert(User user) {
- entityManager.persist(user);
- }
- public User load(int id) {
- return entityManager.find(User.class, id);
- }
- }
- <persistence 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" version="1.0">
- <persistence-unit name="cpJpaPu" transaction-type="RESOURCE_LOCAL">
- <provider>org.hibernate.ejb.HibernatePersistence</provider>
- <class>com.mydomain.User</class>
- <properties>
- <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
- <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
- <property name="hibernate.show_sql" value="false"/>
- <property name="hibernate.connection.username" value="user"/>
- <property name="hibernate.connection.password" value=""/>
- <property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/mydb"/>
- </properties>
- </persistence-unit>
- </persistence>
- javax.persistence.PersistenceException: No Persistence provider for EntityManager named cpJpaPu
- javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
- javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
- com.mydomain.GetController.getUser(GetController.java:25)
- sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
- sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- java.lang.reflect.Method.invoke(Unknown Source)
- org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:214)
- org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
- org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
- org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:748)
- org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:689)
- org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
- org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:947)
- org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:878)
- org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:946)
- org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:837)
- javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
- org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:822)
- javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
- org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
- org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108)
- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.mygroup</groupId>
- <artifactId>myartifact</artifactId>
- <version>0.1.0</version>
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>0.5.0.M6</version>
- </parent>
- <dependencies>
- <!-- Spring framework -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <!-- Hibernate -->
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>4.3.0.Final</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-entitymanager</artifactId>
- <!-- Must override version or face stack traces -->
- <version>4.3.0.Final</version>
- </dependency>
- <!-- Spring ORM, works with Hibernate -->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-orm</artifactId>
- </dependency>
- <!-- Spring implementation of Jackson for RESTful JSON -->
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- </dependency>
- <!-- JDBC -->
- <dependency>
- <groupId>postgresql</groupId>
- <artifactId>postgresql</artifactId>
- <version>9.1-901.jdbc4</version>
- </dependency>
- <!-- Logging -->
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- </dependency>
- <!-- Prevent logging conflicts -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-logging</artifactId>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- </dependencies>
- <properties>
- <start-class>com.cloudfordev.controlpanel.Application</start-class>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- </properties>
- <build>
- <plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.7</source>
- <target>1.7</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
- <repositories>
- <repository>
- <id>spring-snapshots</id>
- <url>http://repo.spring.io/libs-snapshot</url>
- <snapshots><enabled>true</enabled></snapshots>
- </repository>
- </repositories>
- <pluginRepositories>
- <pluginRepository>
- <id>spring-snapshots</id>
- <url>http://repo.spring.io/libs-snapshot</url>
- <snapshots><enabled>true</enabled></snapshots>
- </pluginRepository>
- </pluginRepositories>
- </project>
- @Bean
- public LocalEntityManagerFactoryBean entityManagerFactory(){
- LocalEntityManagerFactoryBean factoryBean = new LocalEntityManagerFactoryBean();
- factoryBean.setPersistenceUnitName("cpJpaPu");
- return factoryBean;
- }
Add Comment
Please, Sign In to add comment