我正在尝试在DepartmentService中注入DepartmentDAO.这是在我添加@Transactional注释后出现的.所以这是我的DepartmentService:
@Service
@Transactional
public class DepartmentService extends AbstractCRUDService
这是我的部门DAO:
@Repository
@Transactional(propagation = Propagation.MANDATORY)
public class DepartmentDAO extends AbstractCRUDDao
这是一个applicationContext.xml:
我的堆栈跟踪:
мар 29,2013 4:46:35 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production envi
ronments was not found on the java.library.path: C:Program FilesJavajre7bin;C:WINDOWSSunJava
bin;C:WINDOWSsystem32;C:WINDOWS;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/
bin;C:/Program Files/Java/jre7/lib/i386;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:W
INDOWSsystem32WindowsPowerShellv1.0;C:Program FilesMercurial;C:Program FilesMicrosoft SQL Se
rver100ToolsBinn;C:Program FilesMicrosoft SQL Server100DTSBinn;C:Program FilesTortoiseSV
Nbin;c:Program Filesapache-maven-3.0.4-binapache-maven-3.0.4bin;C:Program Fileseclipse;;.
мар 29,2013 4:46:35 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.e
clipse.jst.jee.server:chardymov-webapp' did not find a matching property.
мар 29,2013 4:46:35 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
мар 29,2013 4:46:35 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1710 ms
мар 29,2013 4:46:35 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
мар 29,2013 4:46:35 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.35
мар 29,2013 4:46:38 PM org.apache.catalina.core.ApplicationContext log
INFO: No Spring WebApplicationInitializer types detected on classpath
мар 29,2013 4:46:38 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
29-03-13 16:46:38,669 INFO [ContextLoader:initWebApplicationContext:272] - Root WebApplicationConte
xt: initialization started
29-03-13 16:46:38,741 INFO [XmlWebApplicationContext:prepareRefresh:503] - Refreshing Root WebAppli
cationContext: startup date [Fri Mar 29 16:46:38 EAT 2013]; root of context hierarchy
29-03-13 16:46:38,797 INFO [XmlBeanDefinitionReader:loadBeanDefinitions:315] - Loading XML bean def
initions from URL [file:/C:/Documents%20and%20Settings/mach/workspace/clean2/.metadata/.plugins/org.
eclipse.wst.server.core/tmp0/wtpwebapps/chardymov-webapp/WEB-INF/classes/applicationContext.xml]
29-03-13 16:46:39,270 INFO [AutowiredAnnotationBeanPostProcessor:
@Transactional作为代理实现,恕我直言Spring不解析代理类型为DepartmentDAO.在这种情况下,您有2个解决方案:
>让你的DA实现一个接口并通过最后注入它
>在Spring配置中启用CGLib代理