public String[] listRoles(String username, String userca) throws RemoteException, VOMSException {

    log.info("listRoles(" + StringUtils.join(new Object[] {username, userca}, ',') + ");");
    try {

      Set roles = (Set) ListUserRolesOperation.instance(username, userca).execute();

      HibernateFactory.commitTransaction();

      return ServiceUtils.toStringArray(roles);

    } catch (RuntimeException e) {

      ServiceExceptionHelper.handleServiceException(log, e);
      throw e;
    }
  }