Как настроить пружинный HandlerExceptionResolver для обработки NullPointerException добавленный jsp?

Вы можете использовать метод match:

const a = 'info.name[0][1][5].data[0]';
const collect = a.match(/[^[]+?(?=\])/g) || [];
console.log(collect);

Регулярное выражение состоит из:

[1124 ]
  • [^[]+?: захват одного или нескольких символов, которые не [. ? останавливает захват, как только будет выполнено следующее условие:
  • (?=\]): требуется, чтобы следующий символ был ], но не захватывайте его.
    • Модификатор g обеспечит возвращение всех совпадений.

      || [] добавляется для случая, когда вообще нет совпадений. В этом случае match возвращает null. Это дополнение выведет пустой массив вместо этого null, что может быть более практичным.

      Примечание: я не уверен, почему вы использовали reverse, но если вам действительно нужен выходной массив в обратном порядке, вы, конечно, можете применить reverse к нему.

    10
    задан raisercostin 16 October 2008 в 22:00
    поделиться

    2 ответа

    Посмотрите интерфейс HandlerInterceptor вместо этого. Вы захотите afterCompletion метод. Можно затем прервать ответ и затем установить соответствующую информацию заголовка для перенаправления к настроенной контейнером ошибочной веб-странице. Вы правы, что Spring не имеет этой функциональности, это оказывается перед необходимостью быть указанным web.xml, который определяет, какие коды отображаются на который страницы.

    6
    ответ дан 4 December 2019 в 02:52
    поделиться

    Я не работал с этим конкретным битом пружинной платформы, но в документах говорится

    "Интерфейс, который будет реализован объектами, чем, может разрешить исключения, выданные во время отображения обработчика или выполнения в типичном случае к ошибочным представлениям. Конструкторы обычно регистрируются как бобы в контексте приложения.

    Ошибочные представления походят на ошибочную страницу JSPs, но могут использоваться с любым видом исключения включая любую контролируемую исключительную ситуацию с потенциально прекрасно-детализированными отображениями для определенных обработчиков."

    таким образом, я предположил бы, что, учитывая, что NullPointer расширяет RuntimeException, платформа не разработана для ловли его. Существует ли причина, исключение не может быть обработано в контроллере непосредственно?

    1
    ответ дан 4 December 2019 в 02:52
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: