code: public void unsubscribeFromViewEvent(Class<? extends SystemEvent> systemEvent,
                                           SystemEventListener listener) {
  
          if (systemEvent == null) {
              throw new NullPointerException();
          }
          if (listener == null) {
              throw new NullPointerException();
          }
  
          if (viewListeners != null) {
              List<SystemEventListener> listeners = viewListeners.get(systemEvent);
              if (listeners != null) {
                  listeners.remove(listener);
              }
          }
  
      }
docs: <p class="changed_added_2_0">Remove the listener instance
  referenced by argument <code>listener</code> from the
  <code>UIViewRoot</code> as a listener for events of type
  <code>systemEventClass</code>.
  
  @param systemEvent the <code>Class</code> of event for which
  <code>listener</code> must be fired.
  @param listener the implementation of {@link
  javax.faces.event.SystemEventListener} whose {@link
  javax.faces.event.SystemEventListener#processEvent} method must
  be called when events of type <code>systemEventClass</code> are
  fired.
  
  @throws <code>NullPointerException</code> if
  <code>systemEventClass</code> or <code>listener</code> are
  <code>null</code>.
  
  @since 2.0