Как заставить подстановочный знак * работать в Java URL API - PullRequest
1 голос
/ 06 июня 2011

Добрый день!

Я сделал сервлет фильтра и пытаюсь не включать css и js.Поэтому я написал этот код:

if (url.equals("/login.jsp") || url.equals("/login") ||url.equals("/AddApplicantServlet") ||url.equals("css/*") || url.equals("js/*") ||url.equals("/index.jsp") {
        chain.doFilter(request, response);
    } else {
          ....
    }

Мой XML-код

<filter>
    <filter-name>ServletFilter</filter-name>
    <filter-class>filter.ServletFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>ServletFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

Но по приведенному выше коду .. url.equals("css/*") и url.equals ("js/*") не работает ...Кажется, что использование подстановочных знаков в URL-адресах невозможно.

Есть ли другой способ закодировать это?

1 Ответ

2 голосов
/ 06 июня 2011

Метод String.equals проверяет строгое равенство.

Вам следует позвонить startsWith.
Вы также можете позвонить matches, чтобы проверить его на соответствие регулярному выражению.

...