Home > Java > body text

How to remove 'Request method 'GET' is not supported' error from screen in java

WBOY
Release: 2024-02-11 10:48:08
forward
762 people have browsed it

php editor Banana will introduce you how to solve the "Request method 'GET' is not supported" error that appears in Java. This error occurs when we use an unsupported request method during development. There are two ways to solve this problem, one is by changing the request method to match the supported method, the other is by configuring the web.xml file to add the supported method. No matter which method is used, it can help you solve this problem easily and make your Java application more stable and reliable. Next, we will introduce the specific steps of these two methods in detail.

Question content

When I access the url api in the browser, this error appears on the screen:

Request method "get" is not supported

What I want is to completely eliminate this error when I access the url directly in the browser. I tried creating exception handler logic to catch the error and display blank text but it doesn't work

This is my code:

import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.HttpRequestMethodNotSupportedException;

@controllerAdvice
public class GlobalExceptionHandler{
    @ExceptionHandler(HttpRequestMethodNotSupportedException.class)
    public ResponseEntity<String> handleMethodNotAllowedExceptionException(HttpRequestMethodNotSupportedException ex){
   
      return new ResponseEntity<>("",HttpStatus.METHOD_NOT_ALLOWED);

   }
}
Copy after login

Is there a way to remove this error from the screen? Any help would be greatly appreciated.

Solution

In spring boot 3.2, this code runs perfectly:

import org.springframework.http.httpstatus;
import org.springframework.http.responseentity;
import org.springframework.web.bind.annotation.controlleradvice;
import org.springframework.web.bind.annotation.exceptionhandler;
import org.springframework.web.httprequestmethodnotsupportedexception;

@controlleradvice
public class globalexceptionhandler {
    @exceptionhandler(httprequestmethodnotsupportedexception.class)
    public responseentity<string> exceptionhandler(httprequestmethodnotsupportedexception ex) {
        return new responseentity<>("", httpstatus.method_not_allowed);
    }
}
Copy after login

If your project does not have globalexceptionhandler selected, it means there is a discovery issue or you have another exceptionhandler bean that overrides that handler in some way. Make sure you update your project to the latest version and update the globalexceptionhandler class in the spring discoverable package.

For example, if the application is defined as follows:

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

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

}
Copy after login

Make sure to put the globalexceptionhandler class into the com.example.demo package or its subpackage.

The above is the detailed content of How to remove 'Request method 'GET' is not supported' error from screen in java. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:stackoverflow.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template