@Override
  public void load() {
    super.load();

    // we want the servlet service, but it's loaded after the MTS.
    // Also, we want the agent's proxy to the node-level
    // ServletService. The blackboard is loaded late enough, so we
    // wait 'til then...
    if (sb.hasService(BlackboardService.class)) {
      registerServlet();
    } else {
      ServiceAvailableListener sal =
          new ServiceAvailableListener() {
            public void serviceAvailable(ServiceAvailableEvent ae) {
              Class<?> cl = ae.getService();
              if (BlackboardService.class.isAssignableFrom(cl)) {
                registerServlet();
              }
            }
          };
      sb.addServiceListener(sal);
    }
  }
 public void load() throws StateModelException {
   if (getBlackboardService() == null)
     System.err.println("Warning: Could not get Blackboard service " + this);
   super.load();
   load(null);
 }