⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uicomponentbase.java

📁 一个使用struts+hibernate+spring开发的完的网站源代码。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    }    public void processDecodes(FacesContext context)    {        if (context == null) throw new NullPointerException("context");        if (!isRendered()) return;        for (Iterator it = getFacetsAndChildren(); it.hasNext(); )        {            UIComponent childOrFacet = (UIComponent)it.next();            childOrFacet.processDecodes(context);        }        try        {            decode(context);        }        catch (RuntimeException e)        {            context.renderResponse();            throw e;        }    }    public void processValidators(FacesContext context)    {        if (context == null) throw new NullPointerException("context");        if (!isRendered()) return;        for (Iterator it = getFacetsAndChildren(); it.hasNext(); )        {            UIComponent childOrFacet = (UIComponent)it.next();            childOrFacet.processValidators(context);        }    }    public void processUpdates(FacesContext context)    {        if (context == null) throw new NullPointerException("context");        if (!isRendered()) return;        for (Iterator it = getFacetsAndChildren(); it.hasNext(); )        {            UIComponent childOrFacet = (UIComponent)it.next();            childOrFacet.processUpdates(context);        }    }    public Object processSaveState(FacesContext context)    {        if (context == null) throw new NullPointerException("context");        if (isTransient()) return null;        Map facetMap = null;        for (Iterator it = getFacets().entrySet().iterator(); it.hasNext(); )        {            Map.Entry entry = (Map.Entry)it.next();            if (facetMap == null) facetMap = new HashMap();            UIComponent component = (UIComponent)entry.getValue();            if (!component.isTransient())            {                facetMap.put(entry.getKey(), component.processSaveState(context));            }        }        List childrenList = null;        if (getChildCount() > 0)        {            for (Iterator it = getChildren().iterator(); it.hasNext(); )            {                UIComponent child = (UIComponent)it.next();                if (!child.isTransient())                {                    if (childrenList == null) childrenList = new ArrayList(getChildCount());                    childrenList.add(child.processSaveState(context));                }            }        }        return new Object[] {saveState(context),                             facetMap,                             childrenList};    }    public void processRestoreState(FacesContext context,                                    Object state)    {        if (context == null) throw new NullPointerException("context");        Object myState = ((Object[])state)[0];        Map facetMap = (Map)((Object[])state)[1];        List childrenList = (List)((Object[])state)[2];        for (Iterator it = getFacets().entrySet().iterator(); it.hasNext(); )        {            Map.Entry entry = (Map.Entry)it.next();            Object facetState = facetMap.get(entry.getKey());            if (facetState != null)            {                ((UIComponent)entry.getValue()).processRestoreState(context, facetState);            }            else            {                context.getExternalContext().log("No state found to restore facet " + entry.getKey());            }        }        if (getChildCount() > 0)        {            int idx = 0;            for (Iterator it = getChildren().iterator(); it.hasNext(); )            {                UIComponent child = (UIComponent)it.next();                Object childState = childrenList.get(idx++);                if (childState != null)                {                    child.processRestoreState(context, childState);                }                else                {                    context.getExternalContext().log("No state found to restore child of component " + getId());                }            }        }        restoreState(context, myState);    }    protected FacesContext getFacesContext()    {        return FacesContext.getCurrentInstance();    }    protected Renderer getRenderer(FacesContext context)    {        if (context == null) throw new NullPointerException("context");        String rendererType = getRendererType();        if (rendererType == null) return null;        String renderKitId = context.getViewRoot().getRenderKitId();        RenderKitFactory rkf = (RenderKitFactory)FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);        RenderKit renderKit = rkf.getRenderKit(context, renderKitId);        Renderer renderer = renderKit.getRenderer(getFamily(), rendererType);        if (renderer == null)        {            getFacesContext().getExternalContext().log("No Renderer found for component " + getClientId(context) + " (component-family=" + getFamily() + ", renderer-type=" + rendererType + ")");        }        return renderer;    }    public boolean isTransient()    {        return _transient;    }    public void setTransient(boolean transientFlag)    {        _transient = transientFlag;    }    public static Object saveAttachedState(FacesContext context,                                           Object attachedObject)    {        if (attachedObject == null) return null;        if (attachedObject instanceof List)        {            ArrayList lst = new ArrayList(((List)attachedObject).size());            for (Iterator it = ((List)attachedObject).iterator(); it.hasNext(); )            {                lst.add(saveAttachedState(context, it.next()));            }            return new _AttachedListStateWrapper(lst);        }        else if (attachedObject instanceof StateHolder)        {            if (((StateHolder)attachedObject).isTransient())            {                return null;            }            else            {                return new _AttachedStateWrapper(attachedObject.getClass(),                                                 ((StateHolder)attachedObject).saveState(context));            }        }        else if (attachedObject instanceof Serializable)        {            return attachedObject;        }        else        {            return new _AttachedStateWrapper(attachedObject.getClass(), null);        }    }    public static Object restoreAttachedState(FacesContext context,                                              Object stateObj)            throws IllegalStateException    {        if (context == null) throw new NullPointerException("context");        if (stateObj == null) return null;        if (stateObj instanceof _AttachedListStateWrapper)        {            List lst = ((_AttachedListStateWrapper)stateObj).getWrappedStateList();            List restoredList = new ArrayList(lst.size());            for (Iterator it = lst.iterator(); it.hasNext(); )            {                restoredList.add(restoreAttachedState(context, it.next()));            }            return restoredList;        }        else if (stateObj instanceof _AttachedStateWrapper)        {            Class clazz = ((_AttachedStateWrapper)stateObj).getClazz();            Object restoredObject = null;            try            {                restoredObject = clazz.newInstance();            }            catch (InstantiationException e)            {                throw new RuntimeException("Could not restore StateHolder of type " + clazz.getName() + " (missing no-args constructor?)", e);            }            catch (IllegalAccessException e)            {                throw new RuntimeException(e);            }            if (restoredObject instanceof StateHolder)            {                Object wrappedState = ((_AttachedStateWrapper)stateObj).getWrappedStateObject();                ((StateHolder)restoredObject).restoreState(context, wrappedState);            }            return restoredObject;        }        else        {            return stateObj;        }    }    public Object saveState(FacesContext context)    {        Object values[] = new Object[7];        values[0] = _id;        values[1] = _rendered;        values[2] = _rendererType;        values[3] = _clientId;        values[4] = saveAttributesMap();        values[5] = saveAttachedState(context, _facesListeners);        values[6] = saveValueBindingMap(context);        return ((Object) (values));    }    public void restoreState(FacesContext context, Object state)    {        Object values[] = (Object[])state;        _id = (String)values[0];        _rendered = (Boolean)values[1];        _rendererType = (String)values[2];        _clientId = (String)values[3];        restoreAttributesMap(values[4]);        _facesListeners = (List)restoreAttachedState(context, values[5]);        restoreValueBindingMap(context, values[6]);    }    private Object saveAttributesMap()    {        if (_attributesMap != null)        {            return _attributesMap.getUnderlyingMap();        }        else        {            return null;        }    }    private void restoreAttributesMap(Object stateObj)    {        if (stateObj != null)        {            _attributesMap = new _ComponentAttributesMap(this, (Map)stateObj);        }        else        {            _attributesMap = null;        }    }    private Object saveValueBindingMap(FacesContext context)    {        if (_valueBindingMap != null)        {            int initCapacity = (_valueBindingMap.size() * 4 + 3) / 3;            HashMap stateMap = new HashMap(initCapacity);            for (Iterator it = _valueBindingMap.entrySet().iterator(); it.hasNext(); )            {                Map.Entry entry = (Map.Entry)it.next();                stateMap.put(entry.getKey(),                             saveAttachedState(context, entry.getValue()));            }            return stateMap;        }        else        {            return null;        }    }    private void restoreValueBindingMap(FacesContext context, Object stateObj)    {        if (stateObj != null)        {            Map stateMap = (Map)stateObj;            int initCapacity = (stateMap.size() * 4 + 3) / 3;            _valueBindingMap = new HashMap(initCapacity);            for (Iterator it = stateMap.entrySet().iterator(); it.hasNext(); )            {                Map.Entry entry = (Map.Entry)it.next();                _valueBindingMap.put(entry.getKey(),                                     restoreAttachedState(context, entry.getValue()));            }        }        else        {            _valueBindingMap = null;        }    }    /**     * @param string the component id, that should be a vaild one.     */    private void isIdValid(String string) {        //is there any component identifier ?        if(string == null)            return;         //Component identifiers must obey the following syntax restrictions:        //1. Must not be a zero-length String.        if(string.length()==0){            throw new IllegalArgumentException("component identifier must not be a zero-length String");        }        //let's look at all chars inside of the ID if it is a valid ID!        char[] chars = string.toCharArray();        for (int i = 0; i < chars.length; i++) {            char tmpChar = chars[i];            //2. First character must be a letter or an underscore ('_').            if(i==0){                if(!Character.isLetter(tmpChar) &&  tmpChar !='_'){                    throw new IllegalArgumentException("component identifier's first character must be a letter or an underscore ('_')! But it is \""+tmpChar+"\"");                            }            }else{                //3. Subsequent characters must be a letter, a digit, an underscore ('_'), or a dash ('-').                if(!Character.isDigit(tmpChar) && !Character.isLetter(tmpChar) && tmpChar !='-' && tmpChar !='_'){                    throw new IllegalArgumentException("Subsequent characters of component identifier must be a letter, a digit, an underscore ('_'), or a dash ('-')! But component identifier contains \""+tmpChar+"\"");                            }            }        }            }            //------------------ GENERATED CODE BEGIN (do not modify!) --------------------    private static final boolean DEFAULT_RENDERED = true;    private Boolean _rendered = null;    private String _rendererType = null;    public void setRendered(boolean rendered)    {        _rendered = Boolean.valueOf(rendered);    }    public boolean isRendered()    {        if (_rendered != null) return _rendered.booleanValue();        ValueBinding vb = getValueBinding("rendered");        Boolean v = vb != null ? (Boolean)vb.getValue(getFacesContext()) : null;        return v != null ? v.booleanValue() : DEFAULT_RENDERED;    }    public void setRendererType(String rendererType)    {        _rendererType = rendererType;    }    public String getRendererType()    {        if (_rendererType != null) return _rendererType;        ValueBinding vb = getValueBinding("rendererType");        return vb != null ? (String)vb.getValue(getFacesContext()) : null;    }    //------------------ GENERATED CODE END ---------------------------------------}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -