Java: Как создать шаблон URL с несколькими символами подстановки? - PullRequest
3 голосов
/ 20 сентября 2019

Как можно перенаправить следующий путь с Jetty?

/users/user_id/transactions/transaction_id

Я пробовал это так:

/users/*/transactions/*

Но я получаю сообщение об ошибке:

java.lang.IllegalArgumentException: нарушение спецификации 12.2 сервлета: глобус '*' может существовать только в конце совпадений на основе префикса: неверная спецификация "/users/*/transactions"

Чтотакое решение?

Спасибо.

1 Ответ

2 голосов
/ 20 сентября 2019

В web.xml, если вы дадите шаблон URL, подобный приведенному ниже:

    <servlet-mapping>
       <servlet-name>servletName</servlet-name>
       <url-pattern>/users/*</url-pattern>
    </servlet-mapping>

Итак, шаблон URL /users/* означает, что все эти запросы будут приняты, начиная с /users/и заканчивается чем угодно.Например: /users/get/all

Но вы не можете указать шаблон URL, например /users/*/anything/*/.., который недопустим.

Снимок экрана 12.2 Спецификация сопоставления из Oracle - книга спецификаций сервлетов Java ™ - версия 4.0 :

enter image description here

...