Spring 组件扫描无法在父项目中找到组件
我有一个SpringMVC项目,它依赖于SpringJPA实用程序项目 mvc项目无法在SpringJPA项目中找到存储库组件。我已经在java构建路径和部署程序集中包含了JPA项目,JPA项目的应用程序上下文位于MVC的类路径中 我正在使用springJPA项目的order and export in java构建路径使其可用于MVC。JPA项目中的测试用例工作得很好,但是当我尝试访问MVC中的存储库时,会出现自动连接错误 详情如下 MVC项目的web.xmlSpring 组件扫描无法在父项目中找到组件,spring,maven,spring-mvc,spring-data-jpa,component-scan,Spring,Maven,Spring Mvc,Spring Data Jpa,Component Scan,我有一个SpringMVC项目,它依赖于SpringJPA实用程序项目 mvc项目无法在SpringJPA项目中找到存储库组件。我已经在java构建路径和部署程序集中包含了JPA项目,JPA项目的应用程序上下文位于MVC的类路径中 我正在使用springJPA项目的order and export in java构建路径使其可用于MVC。JPA项目中的测试用例工作得很好,但是当我尝试访问MVC中的存储库时,会出现自动连接错误 详情如下 MVC项目的web.xml <?xml version
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring/spring-security.xml,
/WEB-INF/spring/spring-mail.xml,
classpath*:app-context.xml
<!--/WEB-INF/spring/hibernate-context.xml
/WEB-INF/spring/applicationContext-security.xml,
-->
</param-value>
</context-param>
<!-- Creates the Spring Container shared by all Servlets and Filters -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Processes application requests -->
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring/appServlet/servlet-context.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- Spring Security -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>
org.springframework.web.filter.DelegatingFilterProxy
</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- session time-out -->
<!-- <session-config>
<session-timeout>10</session-timeout>
</session-config> -->
</web-app>
如果SpringJPA是指SpringDataJPA,您在哪里启用和扫描存储库?像这样的
<jpa:repositories base-package="com.acme.repositories" />
注意:
上下文:组件扫描
jpa:存储库
您必须添加jpa名称空间并进行更改
<context:component-scan base-package="com.company" />
借
是的,spring数据jpa。存储库位于com.company内部。我已经尝试过直接扫描公司内部的存储库,仍然是相同的错误。谢谢。我做了更改,它正在查找存储库。但是现在我得到了实体管理器的另一个错误。我将更新问题。尝试创建其他帖子以避免混淆,并标记我的回答是否正确。没问题,让我知道你的进展。我只能每90分钟发布一次:
<jpa:repositories base-package="com.acme.repositories" />
<context:component-scan base-package="com.company" />
<jpa:repositories base-package="com.company.repositories" />