Spring Boot Custom Hata Sayfaları Yapmak

Spring Boot
Spring Dersleri

Spring Boot Dersleri‘ne devam ediyoruz.

Spring Boot projelerimizde oluşacak hataların kullanıcılara anlamlı mesajlar halinde göstermek önemli bir husus. Default hata mesajları son kullanıcı tarafından anlaşılabilir olmadığı gibi çok tercih edilen bir durum da değil açıkcası.

Spring Boot uygulamalarımızda kendi hata sayfalarımızı yapmamız için ve Spring Boot’un kolaylıkla tanıması için aşağıdaki yolda ilgili hata sayfalarına karşılık gelen sayfalarımızın olması gerekmektedir.Resources’in altında public klasörü oluşturuyoruz ve altına error klasörü oluşturuyoruz ve ilgili sayfalarımızı bu klasörün altına koyuyoruz.

src/
 +- main/
     +- java/
     |   + ...
     +- resources/
         +- public/
             +- error/
             |   +- 404.html
             |   +- 500.html

Maven bağımlığımızla başlayalım.

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

Bağımlılılarımız yukarıdaki gibi olacaktır.

Hata sayfalarımızı oluşturalım.

404 hata sayfası.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>blog.burakkutbay.com</title>
</head>
<body>
    <h1>404 HATASI</h1>
    <h4>Böyle bir sayfa yok.</h4>
</body>
</html>

500 hata sayfası.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>blog.burakkutbay.com</title>
</head>
<body>
    <h1>500 HATASI</h1>
    <h4>Bir Sorun Oluştu.</h4>
</body>
</html>

Şimdi controllerimizi oluşturalım.

@RestController
public class MyController {

    @RequestMapping("/index")
    public String Index() {
        //Bilerek hata oluşturuyoruz 500 hata sayfasına düşmesi için
        int i=1/0;
        return "index";
    }
}

index adlı metodta bilerek bir hata oluşmasını sağlıyoruz.

localhost:8080/index adresine gittiğimizde 1/0 işlemi hata oluşacağı için kullanıcı 500 hatası iletilecektir. Bu 500 hatası bizim oluşturduğumuz sayfa olacaktır ve o sayfa görüntülenecektir.

500 Hatası

500 Hatası

localhost:8080 adresinde varsayılan bir sayfa oluşturmuyoruz. Çünkü 404 hatası alması istiyoruz. 404 hatası oluştuğunda bizim oluşturduğumuz sayfa gösterilmektedir.

404 Hatası

404 Hatası

Şeklinde diğer tüm hata sayfalarını oluşturabiliriz.


Önceki Ders: Spring Boot Uygulaması TimeZone Değiştirmek
Spring Boot Dersleri
Sonraki Ders: 

One Comment

  1. Allah sizden razi olsun bu dersleri gordum cok sevindim

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Burak KUTBAY 2010 - 2019
%d blogcu bunu beğendi: