gpt4 book ai didi

java - 添加另一个 Spring MVC 项目作为依赖项后 Spring Boot 找不到合适的 URL 映射

转载 作者:行者123 更新时间:2023-12-02 02:07:23 24 4
gpt4 key购买 nike

我正在开发一个 Spring Boot 项目,该项目从另一个 Spring MVC 项目获取服务。在我添加服务项目之前,URL 映射非常适合 Spring Boot 项目。但是在将 spring MVC 项目添加为依赖项并扫描所有组件和映射器后,该项目无法确定 URL 映射。 (两个项目没有任何编译错误)

这是我的 Spring Boot 项目 Controller

@Controller
public class PriceFactorController {

private static final Logger logger = LoggerFactory.getLogger(PriceFactorController.class);


/*

@Autowired
PriceAggregator2 priceAggregator2;
*/

@GetMapping("/price")
public ModelAndView priceGet() {
ModelAndView modelAndView = new ModelAndView();
PriceSearch priceSearch = new PriceSearch();
modelAndView.addObject("priceSearch", priceSearch);
modelAndView.setViewName("price");
return modelAndView;
}

@PostMapping("/price")
public ModelAndView pricePost(
@Valid @ModelAttribute("priceSearch") PriceSearch priceSearch,
BindingResult bindingResult,
Model model) {

priceSearch.makeDestinationList();
priceSearch.makeTravellerList();

// List<PricingResult> resultSet=priceAggregator2.getPriceResultList(priceSearch.getPriceSearchDTO());

ModelAndView modelAndView = new ModelAndView();
logger.debug(priceSearch.toString());
if (bindingResult.hasErrors()) {
modelAndView.setViewName("price");
} else {
modelAndView.setViewName("redirect:/result");
}
return modelAndView;
}


@GetMapping("/result")
public ModelAndView priceResult(
@RequestParam(value = "key", required = false) String key,
Model model) {
Result result = new Result();
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("result", result);
modelAndView.setViewName("result");
return modelAndView;
}
}

但它似乎并没有寻找这个 Controller ,这是我的日志..

2018-05-28 16:42:15.114 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet        : DispatcherServlet with name 'dispatcherServlet' processing GET request for [/price]
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] s.w.s.m.m.a.RequestMappingHandlerMapping : Looking up handler method for path /price
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] s.w.s.m.m.a.RequestMappingHandlerMapping : Did not find handler method for [/price]
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.handler.SimpleUrlHandlerMapping : Matching patterns for request [/price] are [/**]
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.handler.SimpleUrlHandlerMapping : URI Template variables for request [/price] are {}
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapping [/price] to HandlerExecutionChain with handler [ResourceHttpRequestHandler [locations=[ServletContext resource [/], class path resource [META-INF/resources/], class path resource [resources/], class path resource [static/], class path resource [public/]], resolvers=[org.springframework.web.servlet.resource.PathResourceResolver@45cc601]]] and 1 interceptor
2018-05-28 16:42:15.115 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Last-Modified value for [/price] is: -1
2018-05-28 16:42:15.116 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2018-05-28 16:42:15.116 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Successfully completed request
2018-05-28 16:42:15.116 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : DispatcherServlet with name 'dispatcherServlet' processing GET request for [/error]
2018-05-28 16:42:15.116 DEBUG 27866 --- [nio-8080-exec-3] s.w.s.m.m.a.RequestMappingHandlerMapping : Looking up handler method for path /error
2018-05-28 16:42:15.117 DEBUG 27866 --- [nio-8080-exec-3] s.w.s.m.m.a.RequestMappingHandlerMapping : Returning handler method [public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)]
2018-05-28 16:42:15.117 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Last-Modified value for [/error] is: -1
2018-05-28 16:42:15.131 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.v.ContentNegotiatingViewResolver : Requested media types are [text/html, text/html;q=0.8] based on Accept header types and producible media types [text/html])
2018-05-28 16:42:15.134 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.view.freemarker.FreeMarkerView : No FreeMarker view found for URL: error.ftl
2018-05-28 16:42:15.134 DEBUG 27866 --- [nio-8080-exec-3] o.s.w.s.v.ContentNegotiatingViewResolver : Returning [org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration$SpelView@7be99ccd] based on requested media type 'text/html'
2018-05-28 16:42:15.134 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Rendering view [org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration$SpelView@7be99ccd] in DispatcherServlet with name 'dispatcherServlet'
2018-05-28 16:42:15.134 DEBUG 27866 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet : Successfully completed request

此外,

package lk.xxc;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;

//http://www.thymeleaf.org/doc/articles/layouts.html'
@MapperScan("com.xxc")
@ComponentScan(basePackages = {"com.xxc"})
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class })
public class SpringBootWebApplication {

public static void main(String[] args) throws Exception {
SpringApplication.run(SpringBootWebApplication.class, args);
}

}
<小时/>

这是我添加的依赖

   <dependency>
<groupId>com.xxc</groupId>
<artifactId>price-engine</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>

最佳答案

您必须为这两个项目添加基础包。

@ComponentScan(basePackages = {"com.xxc", "lk.xcc"})
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class })
public class SpringBootWebApplication {

public static void main(String[] args) throws Exception {
SpringApplication.run(SpringBootWebApplication.class, args);
}
}

这将扫描 com.xxclk.xcc 中的组件

关于java - 添加另一个 Spring MVC 项目作为依赖项后 Spring Boot 找不到合适的 URL 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50564252/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com