// 1) if we find it then we get it and attach it to the passed in writer
// 2) if we can't find one, we create a new StringWriter,
// and pass it to the renderScreenString;
// then we wrap its content and put it in the cache;
// and we attach it to the passed in writer
WidgetContextCacheKey wcck = new WidgetContextCacheKey(context);
String screenCombinedName = resourceName + ":" + screenName;
ScreenCache screenCache = new ScreenCache();
GenericWidgetOutput gwo = screenCache.get(screenCombinedName, wcck);
if (gwo == null) {
Writer sw = new StringWriter();