SetAttribute - установка атрибута
Сервлеты устанавливают атрибуты, используя метод ServletContext.setAttribute; обычно это производится во время инициализации. Когда у Вас несколько сервлетов используют атрибут, каждый должен проинициализировать этот атрибут. А раз так, каждый сервлет должен проверить значение атрибута, и устанавливать его только в том случае если предыдущий сервлет не сделал этого.
Следующий пример демонстрирует метод init сервлета CatalogServlet, который пробует установить совместно-используемый атрибут для магазина Duke's Bookstore:
public class CatalogServlet extends HttpServlet {
public void init() throws ServletException { BookDBFrontEnd bookDBFrontEnd = ...
if (bookDBFrontEnd == null) { getServletContext().setAttribute( "examples.bookstore.database.BookDBFrontEnd", BookDBFrontEnd.instance());
} } ... }
Если сервлет установил атрибут, каждый другой сервлет в том же контексте может запрашивать его значение, переопределять это значение, или удалять атрибут.