Java 如何在spring中为视图路径设置自定义视图解析器
我有带控制器的lib(spring social),它有以下代码:Java 如何在spring中为视图路径设置自定义视图解析器,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有带控制器的lib(spring social),它有以下代码: @RequestMapping(value="/{providerId}", method=RequestMethod.GET) public String connectionStatus(@PathVariable String providerId, NativeWebRequest request, Model model) { setNoCache(request); processFlash(
@RequestMapping(value="/{providerId}", method=RequestMethod.GET)
public String connectionStatus(@PathVariable String providerId, NativeWebRequest request, Model model) {
setNoCache(request);
processFlash(request, model);
List<Connection<?>> connections = connectionRepository.findConnections(providerId);
setNoCache(request);
if (connections.isEmpty()) {
return connectView(providerId);
} else {
model.addAttribute("connections", connections);
return connectedView(providerId);
}
}
@RequestMapping(value=“/{providerId}”,method=RequestMethod.GET)
公共字符串连接状态(@PathVariable String providerId,NativeWebRequest请求,模型){
setNoCache(请求);
processFlash(请求、型号);
List通过创建扩展UrlBasedViewResolver的类并重写其中的buildView方法,可以实现重定向到不同于从遗留代码控制器返回的url的视图
public class CustomizedViewResolver extends UrlBasedViewResolver {
@Override
protected AbstractUrlBasedView buildView(String viewName) throws Exception {
String newViewName;
if(viewName.equals("YourLegacyCodeViewName")){
newViewName = "ViewNameYouWantToRedirect";
}else{
newViewName = viewName;
}
return super.buildView(newViewName);
}
}
确保此自定义视图解析器的优先级高于InternalResourceViewResolver。
有关buildView方法的更多信息,请检查。是否重定向:
不执行您需要的操作?@chrylis,这是库代码,我无法修复