code: public void sessionAttributeRemoved(ISession session, Object name, Object value, Boolean oldIsBindingListener) {
          HttpSessionAttributeListener listener = null;
          HttpSessionBindingEvent event = null;
          HttpSession httpsession = (HttpSession) _adapter.adapt(session);
  
          event = new HttpSessionBindingEvent(httpsession, (String) name, value);
          // if (value instanceof HttpSessionBindingListener) {
          if (value != null && oldIsBindingListener.booleanValue()) {
              ((HttpSessionBindingListener) value).valueUnbound(event);
          }
          for (int i = 0; i < _sessionAttributeListeners.size(); i++) {
              listener = (HttpSessionAttributeListener) _sessionAttributeListeners.get(i);
              if (com.ibm.ejs.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_CORE.isLoggable(Level.FINE)) {
                  LoggingUtil.SESSION_LOGGER_CORE.logp(Level.FINE, methodClassName, "sessionAttributeRemoved", "SessionManager calling attributeRemoved on listener:" + listener);
              }
              listener.attributeRemoved(event);
          }
  
      }
docs: Method sessionAttributeRemoved
  <p>
  
  @see com.ibm.wsspi.session.ISessionStateObserver#sessionAttributeRemoved(com.ibm.wsspi.session.ISession, java.lang.Object, java.lang.Object)