当前位置: 首页 > 工具软件 > Scree > 使用案例 >

scree 中的几个内置对象

米景辉
2023-12-01
· 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
 类似资料: