protected String getScreenCaption(Element window, String src, Locale locale) { String key = getCaptionCacheKey(src, locale); String caption = captionCache.get(key); if (caption != null) return caption; caption = window.attributeValue("caption"); if (StringUtils.isNotEmpty(caption)) { if (!caption.startsWith("msg://")) { cacheCaption(key, caption); return caption; } String messagePack = window.attributeValue("messagesPack"); if (StringUtils.isEmpty(messagePack)) { messagePack = packageFromFilePath(src); } if (StringUtils.isNotEmpty(messagePack)) { caption = messageTools.loadString(messagePack, caption); cacheCaption(key, caption); return caption; } } caption = StringUtils.EMPTY; cacheCaption(key, caption); return caption; }