org.springframework.web.servlet.PageNotFound錯誤
阿新 • • 發佈:2019-02-11
org.springframework.web.servlet.PageNotFound
今天APP呼叫介面時出現404錯誤,檢查log發現出現WARN :
org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/api/login_sign] in DispatcherServlet with name ‘spring’
我就很奇怪怎麼會出現這個問題,百思不得其解。程式碼如下:
package com.pbh.controller.api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.lianshangche.response.DealerResponse;
import com.lianshangche.response.exception.exceptionhandler.Result;
import com.lianshangche.service.web.IDealerService;
/**
*
* <p>Title:APILoginSignController </p>
* <p>Description: APP登入介面</p>
* @author PanBaihui
* @date 2017年8月18日 上午10:06:15
*/
@RestController(value="api.APILoginSignController")
@RequestMapping("/api")
public class APILoginSignController {
@Autowired
IDealerService dealerService;
/**
* APP驗籤登入
* @author PanBaihui
* @time 2017年8月22日17:41:39
* @param dealerResponse
* @return
*/
@PostMapping(name="/login_sign")
public Result loginSign(@ModelAttribute DealerResponse dealerResponse) {
return this.dealerService.loginSign(dealerResponse);
}
}
開始以為是哪裡配置了攔截login,全文搜尋後未發現攔截,又測試其他可以訪問的介面到該類下,可以訪問,那就說明是該方法程式碼塊問題,仔細檢查發現,@PostMapping 註解不需要name,直接寫url就好。
@PostMapping(name=”/login_sign”) 改為 @PostMapping(“/login_sign”)