java - Spring Boot 。映射 2 个独立的项目 Controller 而忽略一个项目

标签 java xml spring tomcat spring-boot

我有一个 spring boot 应用程序,它加载了 2 个其他项目的配置,如下所示:

应用注解:@ImportResource("path/to/xml/config.xml")

它映射到 config.xml 包含:

<import resource="classpath:path/to/project1/config.xml"/>
<import resource="classpath:path/to/project2/config.xml"/>

这些 config.xml 分别包含以下几行:

<context:component-scan base-package="my.project1.package" />
<context:component-scan base-package="my.project2.package" />

在这些包中我有一个 Controller :

项目 1 Controller

package my.project1.package;

@RestController
@RequestMapping("/project1")
@SessionAttributes("batchNumber")
public class Project1Controller { 
    @RequestMapping(value="/sample", method = RequestMethod.GET)
    public String sampleMethod() {
        return "hi";
    }
}

和项目 2 Controller :

package my.project2.package;

@RestController
@RequestMapping("/project2")
@SessionAttributes("batchNumber")
public class Project2Controller { 
    @RequestMapping(value="/sample", method = RequestMethod.GET)
    public String sampleMethod() {
        return "hi2";
    }
}

是的,方法名和它们的映射需要相同,只是类的 ReqeustMapping 不同。

当我使用 Spring Boot 启动我的应用程序时。

我得到了 Mapped [/project1/sample] 行,它工作正常,但是 /project2/sample 从未被映射。

这些 Controller 没有被映射/扫描是否有可能的原因?

最佳答案

如上评论

在上下文扫描中列出了错误的包

关于java - Spring Boot 。映射 2 个独立的项目 Controller 而忽略一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26529912/

相关文章:

java - 膨胀 ListView 二进制 XML 行 0 时出错#

java - org.hibernate.boot.registry.classloading.spi.ClassLoadingException:无法加载类[emp.hbm.xml]

android - 使用 AndroidAnnotations (Spring Rest) 处理超时

java - POST请求失败(放心测试)

java - 我无法连接到数据库 - 程序不知道 JAR 文件在哪里

java - 在 wicket 中获取 CSS 值

java - JEdi​​torPane.setPage() 方法在运行时仅工作一次

android - 在 Android 中访问菜单 XML 文件中的全局变量

java - Volatile 与并发收集一起使用?

java - Spring MVC。 Controller 和 JSP 协作