2011-02-04 3 views
3

У меня есть приложение JSF, в котором у меня разные сервлеты и фишки. Сервер находится на реальном IP-адресе. Теперь я хочу, чтобы один сервлет был доступен из любого места в сети, остальная часть приложения должна быть доступна только через localhost? Какой самый простой способ сделать это?Как отключить определенные части приложения в jsf?

ответ

5

Используйте Filter, который отображается на url-pattern покрытие ресурсы, которые вы хотите скрыть, и делает в основном следующим образом в doFilter() метода:

if (request.getRemoteAddr().equals(request.getLocalAddr())) { 
    chain.doFilter(request, response); 
} else { 
    ((HttpServletResponse) response).sendError(HttpServletResponse.SC_FORBIDDEN); 
} 

Это будет показывать ошибку HTTP 403 FORBIDDEN для запросов не инициированных тот же клиент, что и сервер.

Смежные вопросы