ana*_*and 4 hibernate spring-mvc
我将我的模型类保存在com.anand.model.Employee.java中,正确地我在sdnext-servlet.xml中提到了annotatedClasses.但我仍然得到错误.请帮我解决这个问题.
sdnext-servlet.xml中
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="annotatedClasses">
<list>
<value>com.anand.model.Employee</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
<prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
</props>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
模型类:Employee.java
package com.anand.model;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
/**
* @author Anand Gopalan
*
*/
@Entity
@Table(name="Employee")
public class Employee implements Serializable{
private static final long serialVersionUID = -723583058586873479L;
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "empid")
private Integer empId;
@Column(name="empname")
private String empName;
@Column(name="empaddress")
private String empAddress;
@Column(name="salary")
private Long salary;
@Column(name="empAge")
private Integer empAge;
public Integer getEmpId() {
return empId;
}
public void setEmpId(Integer empId) {
this.empId = empId;
}
public String getEmpName() {
return empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
public String getEmpAddress() {
return empAddress;
}
public void setEmpAddress(String empAddress) {
this.empAddress = empAddress;
}
public Long getSalary() {
return salary;
}
public void setSalary(Long salary) {
this.salary = salary;
}
public Integer getEmpAge() {
return empAge;
}
public void setEmpAge(Integer empAge) {
this.empAge = empAge;
}
}
Run Code Online (Sandbox Code Playgroud)
日志:
重度:StandardWrapper.Throwable org.springframework.beans.factory.BeanCreationException:错误创建名称为bean的SessionFactory的"在ServletContext的资源定义[/WEB-INF/config/sdnext-servlet.xml]:豆的初始化失败; 嵌套异常是org.springframework.beans.TypeMismatchException:无法将类型'java.util.ArrayList'的属性值转换为属性'annotatedClasses'所需的类型'java.lang.Class []'; 嵌套异常是java.lang.IllegalArgumentException: 在org.springframework.beans.factory上的org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)找不到类[com.anand.model.Employee] .support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)在org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:290)在org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:222)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)at org org.springframework.context.support.AbstractApp上的.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:545)licationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:443)at org位于org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet)的org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:340)中的.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:459)的.java:307)在org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127)在javax.servlet.GenericServlet.init(GenericServlet.java:158)在org.apache.catalina.core.StandardWrapper. initServlet(StandardWrapper.java:1284)在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)在org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087)在澳 rg.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5229)在org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5516)在org.apache.catalina.util.LifecycleBase.start( LifecycleBase.java:150)org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1575)at org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1565)at java .util.concurrent.FutureTask.run(未知来源)java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源)java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)java.lang.Thread.run (未知来源)由以下原因引起:org.springframework.beans.TypeMismatchException:无法将类型'java.util.ArrayList'的属性值转换为属性'annotatedClasses'所需的类型'java.lang.Class []'; 嵌套异常是java.lang.IllegalArgumentException:在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory的org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:457)中找不到类[com.anand.model.Employee] .convertForProperty(AbstractAutowireCapableBeanFactory.java:1354)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1313)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067) )org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)... 26更多引起:java.lang.IllegalArgumentException:在org中找不到类[com.anand.model.Employee] org.springframework.beans.propertyeditors.ClassEditor.set中的.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:294)位于org.springframework.beans.TypeConverterDelegate的org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:446)org.springframework.beans.TypeConverterDelegate.doConvertTextValue(TypeConverterDelegate.java:474)的AsText(ClassEditor.java:64) .convertIfNecessary(TypeConverterDelegate.java:215)位于org.springframework.beans上的org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:122)org.springframework.beans.TypeConverterDelegate.convertToTypedArray(TypeConverterDelegate.java:485).在org.springframework.beans.BansWrapperImpl.convertForProperty(BeanWrapperImpl.java:452)的org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:154)上的TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:227)... 30更多引起by:java.lang.ClassNotFoundException:com.anand.model.Employee at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)at at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)org.springframework.util.ClassUtils.forName(ClassUtils.java:258)org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java: 291)......还有39个
2014年10月14日上午11点40分35秒org.apache.catalina.core.StandardContext loadOnStartup重度:Servlet的/ sdnext扔负荷()异常抛出java.lang.ClassNotFoundException:com.anand.model.Employee在org.apache.catalina.在org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)的org.springframework.util.ClassUtils.forName(ClassUtils.java:258)中的loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)位于org.springframework.beans.TypeConverterDelegate.doConvertTextValue的org.springframework.beans.propertyeditors.ClassEditor.setAsText(ClassEditor.java:64)中的.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:291)(TypeConverterDelegate.java:474 )org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:446)atg.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:215)atg.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java: 122)at 在org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:154)org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:227)的org.springframework.beans.TypeConverterDelegate.convertToTypedArray(TypeConverterDelegate.java:485)在org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:452)在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.convertForProperty(AbstractAutowireCapableBeanFactory.java:1354)在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory .applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1313)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511) )org.springframework.beans.factory.s upport.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:290)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry) .java:222)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)at org. springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:545)org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)at org.springframework.context.support.AbstractApplicationContext.refresh( AbstractApplicationContext.java:423)org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(F)rameworkServlet.java:443)位于org.springframework.web的org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:459)org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:340)位于org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127)的.avlet.FrameworkServlet.initServletBean(FrameworkServlet.java:307),位于org的javax.servlet.GenericServlet.init(GenericServlet.java:158). apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)atg.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.的java:1087)在org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5229)在org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5516)在org.apache.catalina.util .LifecycleBase.start(LifecycleBase.java:150)at org.apache.catalina.core.ContainerBa 在java的java.util.concurrent.FutureTask.run(未知来源)的org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1565)中的se $ StartChild.call(ContainerBase.java:1575). java.lang.Thread.run上的java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)的util.concurrent.ThreadPoolExecutor.runWorker(未知来源)(未知来源)
这是您所做的替代方案.尝试在配置中替换annotatedClasses以下元素的那个并在之后清理构建工作区+重新启动服务器.
<property name="packagesToScan">
<list>
<value>com.anand.model</value>
</list>
</property>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10083 次 |
| 最近记录: |