package com.sj.persistence.dao
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [com/sj/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/hibernate/MappingException
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1403)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:545)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
at persistence.dao.CustomerDaoTest.setUpBeforeClass(CustomerDaoTest.java:20)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.lang.NoClassDefFoundError: org/hibernate/MappingException
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:124)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)
at org.springframework.orm.jpa.LocalEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalEntityManagerFactoryBean.java:92)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:308)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1400)
... 28 more
Caused by: java.lang.ClassNotFoundException: org.hibernate.MappingException
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 34 more谁能帮看看啊!这个异常是怎么回事
哪里出事了?
解决方案 »
- 在myeclipse的javaweb项目中,请问怎么获取用户自定义文件的路径?
- 根据条件判断显示图片
- json 高手救命,Map转json,全部分了,
- jsp如何实现刷新验证码???
- 急!!!问一个JavaMail的问题
- 怎么在页面点击删除弹出确认删除对话框,成功跳转(怎么指定路径)
- Tomcat中数据源配置为什么有错?
- 各位,我原来是做ASP的,现在想学JSP,请问最快要多长时间可以做一个小小的企业网站之类的??
- 怎样让自己网页在百度或搜狗中排前几名
- 如何在子目录下调用bean?
- Exception starting filter struts2
- 将excel获得的数据存入oracle中的问题
不过从这个看的话 估计是映射文件没配置正确
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;import com.sj.persistence.dao.CustomerDao;
import com.sj.persistence.po.Customer;public class CustomerDaoTest {
private static CustomerDao customerDao ;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
try {
System.out.println(CustomerDao.class.getPackage());
ApplicationContext cxt = new ClassPathXmlApplicationContext("com/sj/applicationContext.xml");
customerDao = (CustomerDao) cxt.getBean("customerDao");
} catch (Exception e) {
e.printStackTrace();
}
} @Test
public void testSave() {
System.out.println(customerDao);
Customer c = new Customer("DDD" , "admin" , "[email protected]" , 100 , 123.321 );
c.setComment("记录备注");
customerDao.save(c);
} @Test
public void testUpdate() {
System.out.println(customerDao);
Customer c = new Customer("管理员" , "admin" , "[email protected]" , 100 , 111.21 );
c.setComment("记录备注更新A");
customerDao.update(c);
} @Test
public void testQueryCustomerByKey() {
Customer c = (Customer) customerDao.queryCustomerByKey("管理员");
System.out.println(c.getUsername() + "\t" + c.getPassword()
+ "\t" + c.getEmail() + "\t" + c.getScore()
+ "\t" + c.getSalesTotal() + "\t" + c.getComment());
} @Test
public void testQueryCustomerByProperty() {
List<Customer> list = (List<Customer>) customerDao.queryCustomerByProperty( Customer.COMMENT, "记录备注");
System.out.println("list=" + list);
for(Customer c : list){
System.out.println(c.getUsername() + "\t" + c.getPassword()
+ "\t" + c.getEmail() + "\t" + c.getScore()
+ "\t" + c.getSalesTotal() + "\t" + c.getComment());
}
} @Test
public void testQueryCustomerAll() {
List<Customer> list = (List<Customer>) customerDao.queryCustomerAll();
for(Customer c : list){
System.out.println(c.getUsername() + "\t" + c.getPassword()
+ "\t" + c.getEmail() + "\t" + c.getScore()
+ "\t" + c.getSalesTotal() + "\t" + c.getComment());
}
} @Test
public void testDelete() {
// System.out.println(customerDao);
customerDao.delete("DDD");
}}
customerDao = (CustomerDao) cxt.getBean("customerDao");
楼主是用注解还是配置文件?
用配置文件的话 看看在com/sj/applicationContext.xml中是否存在customerDao bean及
<property name="mappingResources">
<list>
<value>你要配置的实体 在你的项目应该是Customer的实体的绝对路径</value>
</list>
</property>
没有发现这个类
我怀疑是你spring配置文件里配置这个类 匹配错了
我用的是myeclipse 8.5