Како да креирате прилагођене странице са грешком приликом покретања са Тхимелеаф-ом

Софтвер доживљава грешке. Чак и најбоље апликације ће наићи на грешке у неком тренутку. Према томе, свака апликација треба да има неке механизме за руковање грешкама.

Спринг Боот обезбеђује подразумевану Вхителабел страницу грешке као компоненту своје аутоматске конфигурације за руковање грешкама. Без обзира на то, очекује се да ће програмери креирати прилагођену страницу са грешком која ће заменити Вхителабел страницу са грешком. У овом чланку ћете научити како да прилагодите страницу грешке за ваше Спринг Боот апликације.

Страница грешке беле ознаке Спринг Боот-а

Када Спринг Боот апликација наиђе на грешку, она захтева УРЛ /еррор. Ако на овој локацији нема приказа, приказује се страница о грешци Вхителабел:

Страница грешке Вхителабел наводи датум и време грешке, заједно са одговарајућом временском зоном. Поред тога, указује на тип грешке и њен придружени код. Страница Вхителабел наводи да је ово грешка 404 (страница није пронађена). То је зато што пример апликације нема мапирање за УРЛ „/продуцтс“.

Већина информација представљених на страници о грешци Вхителабел је узета из специфичних атрибута грешке. Приказ грешке Спринг Боот-а има приступ следећим атрибутима грешке:

  • грешка: разлог за грешку.
  • временска ознака: датум и време када је дошло до грешке.
  • статус: код статуса грешке.
  • изузетак: име класе основног изузетка (ако је грешка резултат изузетка).
  • порука: порука о изузетку (ако је грешка резултат изузетка).
  • грешке: Било који резултат изузетка БиндингРесулт (ако је грешка резултат изузетка).
  • траг: праћење стека изузетака (ако је грешка резултат изузетка).
  • путања: УРЛ путања на којој је дошло до грешке.
  Како поставити другу позадину за закључани екран и почетни екран у Андроиду 7.0

Прављење странице са грешком помоћу Тхимелеаф-а

Ваша Спринг Боот апликација треба да има једну страницу грешке сачувану у шаблону „грешка“. Проширење овог шаблона ће се разликовати у зависности од технологије шаблона коју одлучите да користите. На пример, ако се одлучите за шаблон Јава Сервер Пагес (ЈСП), име датотеке треба да буде еррор.јсп.

Међутим, овај пример Спринг Боот апликације користи механизам за шаблоне Тхимелеаф. Дакле, име шаблона је еррор.хтмл. Требало би доследно да постављате шаблон грешке у фасциклу шаблона, у директоријум ресурса са свим вашим другим датотекама шаблона.

Датотека еррор.хтмл

 <!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
 <head>
     <title> Error</title>
     <link rel="stylesheet" th:href="https://wilku.top/how-to-create-custom-spring-boot-error-pages-with-thymeleaf/@{/css/style.css}"/>
 </head>
 <body th:style="'background: url(/images/background1.jpg)
 no-repeat center center fixed;'">
     <div class="container" >
       <h1>An error has occurred...</h1>
       <img th:src="https://wilku.top/how-to-create-custom-spring-boot-error-pages-with-thymeleaf/@{/images/error-icon.png}"
       width="100px" height="100px" />
       <p>There seems to be a problem with the page you requested
       (<span th:text="${path}"></span>).</p>
       <p th:text="${'The status code is ' + status
       + ', which means that the page was ' + error + '.'}"></p>
       <p th:text="${'Further details: ' + message + '.'}"></p>
       <a class="btn" href="https://wilku.top/home">Back to home</a>
     </div>
 </body>
</html>

Прилагођена страница о грешци испуњава неколико важних задатака. Декларише појаву грешке. Након тога, приказује ХТТП захтев који је покренуо грешку. Штавише, он даје кориснику статусни код повезан са грешком. Али ако корисник није упознат са статусним кодовима, страница такође објашњава значење кода кроз атрибут грешке.

Последњи ред текста представља кориснику поруку у случају изузетка. Затим, веза на крају омогућава кориснику да се врати на почетну страницу. Датотека еррор.хтмл користи ЦСС стилски лист и две слике за креирање следећег приказа:

Нека ваша страница о грешци буде прилагођена кориснику

Примарна сврха странице са грешком је да обавести корисника да је дошло до одређене грешке. Међутим, ова страница о грешци је и даље аспект апликације. Због тога је кључно осигурати да страница о грешци буде прилагођена кориснику.

  9 најбољих хардверских новчаника за криптовалуте

То ће значити да се одлучите за коришћење атрибута грешке који саопштавају грешку на једноставнији начин. Дакле, можете изабрати да користите атрибут путање уместо атрибута трага, који је много сложенији и садржи детаље које корисник не мора да зна.

Такође не желите да насумичном кориснику пружите претеране информације о унутрашњем функционисању ваше апликације, јер би то могло да угрози безбедност апликације.