scree 中的几个内置对象

·   screens是一个org.ofbiz.widget.screen.ScreenRenderer对象

·   globalContext是一个org.ofbiz.base.util.collections.MapStack对象

·   nullField是一个org.ofbiz.entity.GenericEntity$NullField对象

·   availableLocales是一个java.util.List对象

·   locale 是一个java.util.Locale对象

·   delegator是一个org.ofbiz.entity.GenericDelegator对象

·   dispatcher是一个org.ofbiz.service.GenericDispatcher对象

·   security是一个org.ofbiz.security.OFBizSecurity对象

·   userLogin是一个org.ofbiz.entity.GenericValue对象

·   parameters是一个java.util.Map对象

这是在ScreenWidgetViewHandler的render方法中的
screens.populateContextForRequest(request, response, servletContext);最后进入
public static void populateContextForRequest(MapStack<String> context, ScreenRenderer screens, HttpServletRequest request, HttpServletResponse response, ServletContext servletContext) {
其中
parameters字段是通过代码
Map<String, Object> parameterMap = UtilHttp.getCombinedMap(request, attrNamesToSkip);初始化的。

进入查看
public static Map<String, Object> getCombinedMap(HttpServletRequest request, Set<? extends String> namesToSkip) {
        FastMap<String, Object> combinedMap = FastMap.newInstance();
        combinedMap.putAll(getParameterMap(request));                   // parameters override nothing
        combinedMap.putAll(getServletContextMap(request, namesToSkip)); // bottom level application attributes
        combinedMap.putAll(getSessionMap(request, namesToSkip));        // session overrides application
        combinedMap.putAll(getAttributeMap(request));                   // attributes trump them all

        return combinedMap;
    }
可以发现parameters包含了请求参数
servlet上下文(包括context-param)
sessionAttributeMap
requestAttributeMap

你可能感兴趣的:(内置对象)