public String getStep7MessageUrl(String locale) throws EtccException {
    CacheAdmin admin = CacheAdmin.getInstance();
    String key = AppEnum.STEP7_MESSAGE_URL.getValue() + locale.toUpperCase();
    String url = (String) admin.getFromCache(key);
    try {

      if (url == null) {

        url = app.getStep7MessageUrl(locale);
        admin.putInCache(key, url);
      }
      return url;
    } catch (Throwable t) {
      admin.cancelUpdate(key);
      logger.error(t);
      throw new EtccException("Error running getStep7MessageUrl: " + t, t);
    }
  }