You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sl...@apache.org on 2009/04/04 20:45:04 UTC
svn commit: r761982 [1/10] - in /myfaces/core/branches/2_0_0/impl/src:
main/java/com/ main/java/org/apache/myfaces/application/
main/java/org/apache/myfaces/config/
main/java/org/apache/myfaces/config/impl/digester/
main/java/org/apache/myfaces/config/...
Author: slessard
Date: Sat Apr 4 18:44:59 2009
New Revision: 761982
URL: http://svn.apache.org/viewvc?rev=761982&view=rev
Log:
Synchronized the code with final draft (2009-03-27).
Added:
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/ViewDeclarationLanguageBase.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/ViewDeclarationLanguageFactoryImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/ViewDeclarationLanguageStrategy.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/Facelet.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletFactory.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguageStrategy.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/StateWriter.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/TemplateClient.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/AbstractUIHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/AttributeInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/CommentInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/CompilationManager.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/CompilationUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/Compiler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/EncodingHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/EndElementInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/Instruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/LiteralAttributeInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/LiteralCommentInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/LiteralTextInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/LiteralXMLInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceManager.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/RemoveUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/SAXCompiler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/StartElementInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/TagLibraryConfig.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/TagUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/TextInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/TextUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/TrimmedTagUnit.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UIInstructionHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UIInstructions.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UILeaf.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UILiteralText.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UILiteralTextHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UIText.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/UITextHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/XMLInstruction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/component/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/CompositeFunctionMapper.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/CompositeVariableMapper.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/DefaultFunctionMapper.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/DefaultVariableMapper.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/ELText.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/TagMethodExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/TagValueExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/VariableMapperWrapper.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/el/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFacelet.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletContext.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletFactory.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultResourceResolver.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/ResourceResolver.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/impl/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/AbstractTagLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/BeanPropertyTagRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/CompositeFaceletHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/CompositeTagDecorator.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/CompositeTagLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MetaRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MetaRulesetImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MetaTagHandlerImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MetadataImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MetadataTargetImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/MethodRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagAttributeImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagAttributesImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagDecorator.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagHandlerFactory.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagHandlerUtils.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/TagLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/UserTagHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ActionSourceRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ConvertHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/EditableValueHolderRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ValidateHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ValueHolderRule.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ActionListenerHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AttributeHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ConvertDateTimeHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ConvertDelegateHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ConvertNumberHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/CoreLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/FacetHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/LoadBundleHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/PhaseListenerHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/SetPropertyActionListenerHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ValidateDelegateHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ValueChangeListenerHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/VerbatimHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/ViewHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/AbstractHtmlLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/HtmlComponentHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/HtmlDecorator.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/HtmlLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/html/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/CatchHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/ChooseHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/ChooseOtherwiseHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/ChooseWhenHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/ForEachHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/IfHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/IndexedValueExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/IteratedValueExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/IterationStatus.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/IterationStatusExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/JstlCoreLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/MappedValueExpression.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/SetHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/core/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/fn/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/fn/JstlFnLibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/fn/JstlFunction.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jstl/fn/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/ComponentRef.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/ComponentRefHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/CompositionHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DecorateHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DefineHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/IncludeHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/InsertHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/ParamHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/RepeatHandler.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/UIDebug.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/UILibrary.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/Classpath.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/DevTools.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/FastWriter.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/ParameterCheck.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/Path.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/Resource.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/facelets/util/package.html
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/jsp/
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/jsp/JspViewDeclarationLanguage.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/view/jsp/JspViewDeclarationLanguageStrategy.java
Removed:
myfaces/core/branches/2_0_0/impl/src/main/java/com/
Modified:
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerSupport.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/FacesConfigDispenser.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigDispenserImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigUnmarshallerImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/elements/Factory.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/ExceptionHandlerImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/FacesContextImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/ServletExternalContextImpl.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/taglib/core/ValidateRegexTag.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java
myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/webapp/Jsp20FacesInitializer.java
myfaces/core/branches/2_0_0/impl/src/test/java/org/apache/myfaces/context/ExecutePhaseClientIdsTest.java
myfaces/core/branches/2_0_0/impl/src/test/java/org/apache/myfaces/context/IsRenderedTest.java
myfaces/core/branches/2_0_0/impl/src/test/java/org/apache/myfaces/context/RenderPhaseClientIdsTest.java
myfaces/core/branches/2_0_0/impl/src/test/java/org/apache/myfaces/context/ResponseWrapperSwitchTest.java
myfaces/core/branches/2_0_0/impl/src/test/java/org/apache/myfaces/lifecycle/RestoreViewExecutorTest.java
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java Sat Apr 4 18:44:59 2009
@@ -50,6 +50,7 @@
import javax.faces.component.UIComponent;
import javax.faces.component.UIOutput;
import javax.faces.component.UIViewRoot;
+import javax.faces.component.behavior.ClientBehavior;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.el.MethodBinding;
@@ -67,7 +68,7 @@
import javax.faces.event.SystemEventListenerHolder;
import javax.faces.render.Renderer;
import javax.faces.validator.Validator;
-import javax.faces.webapp.pdl.PageDeclarationLanguage;
+import javax.faces.view.ViewDeclarationLanguage;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
@@ -151,8 +152,6 @@
private ProjectStage _projectStage;
- private PageDeclarationLanguage _pageDeclarationLanguage;
-
// ~ Constructors
// --------------------------------------------------------------------------
// -----
@@ -494,6 +493,13 @@
}
@Override
+ public Iterator<String> getBehaviorIds()
+ {
+ // TODO: IMPLEMENT HERE
+ return null;
+ }
+
+ @Override
public final Iterator<String> getComponentTypes()
{
return _componentClassMap.keySet().iterator();
@@ -559,19 +565,6 @@
return _navigationHandler;
}
- @Override
- public PageDeclarationLanguage getPageDeclarationLanguage()
- {
- return _pageDeclarationLanguage;
- }
-
- @Override
- public void setPageDeclarationLanguage(PageDeclarationLanguage pdl)
- {
- checkNull(pdl, "PageDeclarationLanguage");
- _pageDeclarationLanguage = pdl;
- }
-
/**
* @deprecated
*/
@@ -799,6 +792,12 @@
return _viewHandler;
}
+ @Override
+ public void addBehavior(String behaviorId, String behaviorClass)
+ {
+ // TODO: IMPLEMENT HERE
+ }
+
@SuppressWarnings("unchecked")
@Override
public final void addComponent(final String componentType, final String componentClassName)
@@ -893,6 +892,13 @@
}
@Override
+ public ClientBehavior createBehavior(String behaviorId) throws FacesException
+ {
+ // TODO: IMPLEMENT HERE
+ return null;
+ }
+
+ @Override
public UIComponent createComponent(FacesContext context, String componentType, String rendererType)
{
checkNull(context, "context");
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerSupport.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerSupport.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerSupport.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/application/ViewHandlerSupport.java Sat Apr 4 18:44:59 2009
@@ -21,6 +21,8 @@
import javax.faces.context.FacesContext;
/**
+ * TODO: RENAME - This class is now used by ViewDeclarationLanguageBase
+ *
* A utility class to isolate a ViewHandler implementation from the underlying
* request/response framework.
* <p>
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/FacesConfigDispenser.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/FacesConfigDispenser.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/FacesConfigDispenser.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/FacesConfigDispenser.java Sat Apr 4 18:44:59 2009
@@ -50,6 +50,18 @@
public void feedApplicationFactory(String factoryClassName);
/**
+ * Add another ExceptionHandlerFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedExceptionHandlerFactory(String factoryClassName);
+
+ /**
+ * Add another ExternalContextFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedExternalContextFactory(String factoryClassName);
+
+ /**
* Add another FacesContextFactory class name
* @param factoryClassName a class name
*/
@@ -60,17 +72,47 @@
* @param factoryClassName a class name
*/
public void feedLifecycleFactory(String factoryClassName);
+
+ /**
+ * Add another ViewDeclarationLanguageFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedViewDeclarationLanguageFactory(String factoryClassName);
+
+ /**
+ * Add another PartialViewContextFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedPartialViewContextFactory(String factoryClassName);
/**
* Add another RenderKitFactory class name
* @param factoryClassName a class name
*/
public void feedRenderKitFactory(String factoryClassName);
+
+ /**
+ * Add another TagHandlerDelegateFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedTagHandlerDelegateFactory(String factoryClassName);
+
+ /**
+ * Add another VisitContextFactory class name
+ * @param factoryClassName a class name
+ */
+ public void feedVisitContextFactory(String factoryClassName);
/** @return Iterator over ApplicationFactory class names */
public Collection<String> getApplicationFactoryIterator();
+
+ /** @return Iterator over ExceptionHandlerFactory class names */
+ public Collection<String> getExceptionHandlerFactoryIterator();
+
+ /** @return Iterator over ExternalContextFactory class names */
+ public Collection<String> getExternalContextFactoryIterator();
/** @return Iterator over FacesContextFactory class names */
public Collection<String> getFacesContextFactoryIterator();
@@ -78,8 +120,20 @@
/** @return Iterator over LifecycleFactory class names */
public Collection<String> getLifecycleFactoryIterator();
+ /** @return Iterator over ViewDeclarationLanguageFactory class names */
+ public Collection<String> getViewDeclarationLanguageFactoryIterator();
+
+ /** @return Iterator over PartialViewContextFactory class names */
+ public Collection<String> getPartialViewContextFactoryIterator();
+
/** @return Iterator over RenderKit factory class names */
public Collection<String> getRenderKitFactoryIterator();
+
+ /** @return Iterator over TagHandlerDelegateFactory factory class names */
+ public Collection<String> getTagHandlerDelegateFactoryIterator();
+
+ /** @return Iterator over VisitContextFactory factory class names */
+ public Collection<String> getVisitContextFactoryIterator();
/** @return Iterator over ActionListener class names (in reverse order!) */
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigDispenserImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigDispenserImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigDispenserImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigDispenserImpl.java Sat Apr 4 18:44:59 2009
@@ -45,32 +45,46 @@
*/
public class DigesterFacesConfigDispenserImpl implements FacesConfigDispenser<FacesConfig>
{
-
+ // Factories
private List<String> applicationFactories = new ArrayList<String>();
+ private List<String> exceptionHandlerFactories = new ArrayList<String>();
+ private List<String> externalContextFactories = new ArrayList<String>();
private List<String> facesContextFactories = new ArrayList<String>();
private List<String> lifecycleFactories = new ArrayList<String>();
+ private List<String> ViewDeclarationLanguageFactories = new ArrayList<String>();
+ private List<String> partialViewContextFactories = new ArrayList<String>();
private List<String> renderKitFactories = new ArrayList<String>();
- private Map<String, String> components = new HashMap<String, String>();
- private Map<String, String> validators = new HashMap<String, String>();
+ private List<String> tagHandlerDelegateFactories = new ArrayList<String>();
+ private List<String> visitContextFactories = new ArrayList<String>();
+
private String defaultRenderKitId;
+ private String messageBundle;
+
private LocaleConfig localeConfig;
+
+ private Map<String, String> components = new HashMap<String, String>();
+ private Map<String, String> converterByClass = new HashMap<String, String>();
+ private Map<String, String> converterById = new HashMap<String, String>();
+ private Map<String, String> validators = new HashMap<String, String>();
+
+ private Map<String, Converter> converterConfigurationByClassName = new HashMap<String, Converter>();
+
+ private Map<String, RenderKit> renderKits = new LinkedHashMap<String, RenderKit>();
+
private List<String> actionListeners = new ArrayList<String>();
+ private List<String> elResolvers = new ArrayList<String>();
private List<String> lifecyclePhaseListeners = new ArrayList<String>();
- private String messageBundle;
private List<String> navigationHandlers = new ArrayList<String>();
- private List<String> viewHandlers = new ArrayList<String>();
+ private List<String> propertyResolver = new ArrayList<String>();
private List<String> resourceHandlers = new ArrayList<String>();
private List<String> stateManagers = new ArrayList<String>();
- private List<String> propertyResolver = new ArrayList<String>();
private List<String> variableResolver = new ArrayList<String>();
- private Map<String, String> converterById = new HashMap<String, String>();
- private Map<String, String> converterByClass = new HashMap<String, String>();
- private Map<String, Converter> converterConfigurationByClassName = new HashMap<String, Converter>();
- private Map<String, RenderKit> renderKits = new LinkedHashMap<String, RenderKit>();
+ private List<String> viewHandlers = new ArrayList<String>();
+
private List<ManagedBean> managedBeans = new ArrayList<ManagedBean>();
+
private List<NavigationRule> navigationRules = new ArrayList<NavigationRule>();
private List<ResourceBundle> resourceBundles = new ArrayList<ResourceBundle>();
- private List<String> elResolvers = new ArrayList<String>();
/**
* Add another unmarshalled faces config object.
@@ -83,9 +97,15 @@
for (Factory factory : config.getFactories())
{
applicationFactories.addAll(factory.getApplicationFactory());
+ exceptionHandlerFactories.addAll(factory.getExceptionHandlerFactory());
+ externalContextFactories.addAll(factory.getExternalContextFactory());
facesContextFactories.addAll(factory.getFacesContextFactory());
lifecycleFactories.addAll(factory.getLifecycleFactory());
+ ViewDeclarationLanguageFactories.addAll(factory.getViewDeclarationLanguageFactory());
+ partialViewContextFactories.addAll(factory.getPartialViewContextFactory());
renderKitFactories.addAll(factory.getRenderkitFactory());
+ tagHandlerDelegateFactories.addAll(factory.getTagHandlerDelegateFactory());
+ visitContextFactories.addAll(factory.getVisitContextFactory());
}
components.putAll(config.getComponents());
@@ -173,6 +193,16 @@
applicationFactories.add(factoryClassName);
}
+ public void feedExceptionHandlerFactory(String factoryClassName)
+ {
+ exceptionHandlerFactories.add(factoryClassName);
+ }
+
+ public void feedExternalContextFactory(String factoryClassName)
+ {
+ externalContextFactories.add(factoryClassName);
+ }
+
/**
* Add another FacesContextFactory class name
*
@@ -195,6 +225,16 @@
lifecycleFactories.add(factoryClassName);
}
+ public void feedViewDeclarationLanguageFactory(String factoryClassName)
+ {
+ ViewDeclarationLanguageFactories.add(factoryClassName);
+ }
+
+ public void feedPartialViewContextFactory(String factoryClassName)
+ {
+ partialViewContextFactories.add(factoryClassName);
+ }
+
/**
* Add another RenderKitFactory class name
*
@@ -206,6 +246,16 @@
renderKitFactories.add(factoryClassName);
}
+ public void feedTagHandlerDelegateFactory(String factoryClassName)
+ {
+ tagHandlerDelegateFactories.add(factoryClassName);
+ }
+
+ public void feedVisitContextFactory(String factoryClassName)
+ {
+ visitContextFactories.add(factoryClassName);
+ }
+
/**
* @return Collection over ApplicationFactory class names
*/
@@ -214,6 +264,16 @@
return applicationFactories;
}
+ public Collection<String> getExceptionHandlerFactoryIterator()
+ {
+ return exceptionHandlerFactories;
+ }
+
+ public Collection<String> getExternalContextFactoryIterator()
+ {
+ return externalContextFactories;
+ }
+
/**
* @return Collection over FacesContextFactory class names
*/
@@ -230,6 +290,16 @@
return lifecycleFactories;
}
+ public Collection<String> getViewDeclarationLanguageFactoryIterator()
+ {
+ return ViewDeclarationLanguageFactories;
+ }
+
+ public Collection<String> getPartialViewContextFactoryIterator()
+ {
+ return partialViewContextFactories;
+ }
+
/**
* @return Collection over RenderKit factory class names
*/
@@ -238,6 +308,16 @@
return renderKitFactories;
}
+ public Collection<String> getTagHandlerDelegateFactoryIterator()
+ {
+ return tagHandlerDelegateFactories;
+ }
+
+ public Collection<String> getVisitContextFactoryIterator()
+ {
+ return visitContextFactories;
+ }
+
/**
* @return Collection over ActionListener class names
*/
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigUnmarshallerImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigUnmarshallerImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigUnmarshallerImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/DigesterFacesConfigUnmarshallerImpl.java Sat Apr 4 18:44:59 2009
@@ -29,16 +29,13 @@
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
-
/**
* @author <a href="mailto:oliver@rossmueller.com">Oliver Rossmueller</a>
*/
public class DigesterFacesConfigUnmarshallerImpl implements FacesConfigUnmarshaller<FacesConfig>
{
-
private Digester digester;
-
public DigesterFacesConfigUnmarshallerImpl(ExternalContext externalContext)
{
digester = new Digester();
@@ -64,7 +61,7 @@
digester.addSetNext("faces-config/application/locale-config", "addLocaleConfig");
digester.addCallMethod("faces-config/application/locale-config/default-locale", "setDefaultLocale", 0);
digester.addCallMethod("faces-config/application/locale-config/supported-locale", "addSupportedLocale", 0);
-
+
// 1.2 specific start
digester.addCallMethod("faces-config/application/el-resolver", "addElResolver", 0);
digester.addObjectCreate("faces-config/application/resource-bundle", ResourceBundle.class);
@@ -73,11 +70,18 @@
digester.addCallMethod("faces-config/application/resource-bundle/var", "setVar", 0);
digester.addCallMethod("faces-config/application/resource-bundle/display-name", "setDisplayName", 0);
// 1.2 specific end
-
+
// 2.0 specific start
digester.addCallMethod("faces-config/application/resource-handler", "addResourceHandler", 0);
+ digester.addCallMethod("faces-config/factory/exception-handler-factory", "addExceptionHandlerFactory", 0);
+ digester.addCallMethod("faces-config/factory/external-context-factory", "addExternalContextFactory", 0);
+ digester.addCallMethod("faces-config/factory/page-declaration-language-factory",
+ "addViewDeclarationLanguageFactory", 0);
+ digester.addCallMethod("faces-config/factory/partial-view-context-factory", "addPartialViewContextFactory", 0);
+ digester.addCallMethod("faces-config/factory/tag-handler-delegate-factory", "addTagHandlerDelegateFactory", 0);
+ digester.addCallMethod("faces-config/factory/visit-context-factory", "addVisitContextFactory", 0);
// 2.0 specific end
-
+
digester.addObjectCreate("faces-config/factory", Factory.class);
digester.addSetNext("faces-config/factory", "addFactory");
digester.addCallMethod("faces-config/factory/application-factory", "addApplicationFactory", 0);
@@ -94,8 +98,8 @@
digester.addCallMethod("faces-config/converter/converter-id", "setConverterId", 0);
digester.addCallMethod("faces-config/converter/converter-for-class", "setForClass", 0);
digester.addCallMethod("faces-config/converter/converter-class", "setConverterClass", 0);
- digester.addObjectCreate("faces-config/converter/attribute",Attribute.class);
- digester.addSetNext("faces-config/converter/attribute","addAttribute");
+ digester.addObjectCreate("faces-config/converter/attribute", Attribute.class);
+ digester.addSetNext("faces-config/converter/attribute", "addAttribute");
digester.addCallMethod("faces-config/converter/attribute/description", "addDescription", 0);
digester.addCallMethod("faces-config/converter/attribute/display-name", "addDisplayName", 0);
digester.addCallMethod("faces-config/converter/attribute/icon", "addIcon", 0);
@@ -104,8 +108,8 @@
digester.addCallMethod("faces-config/converter/attribute/default-value", "setDefaultValue", 0);
digester.addCallMethod("faces-config/converter/attribute/suggested-value", "setSuggestedValue", 0);
digester.addCallMethod("faces-config/converter/attribute/attribute-extension", "addAttributeExtension", 0);
- digester.addObjectCreate("faces-config/converter/property",Property.class);
- digester.addSetNext("faces-config/converter/property","addProperty");
+ digester.addObjectCreate("faces-config/converter/property", Property.class);
+ digester.addSetNext("faces-config/converter/property", "addProperty");
digester.addCallMethod("faces-config/converter/property/description", "addDescription", 0);
digester.addCallMethod("faces-config/converter/property/display-name", "addDisplayName", 0);
digester.addCallMethod("faces-config/converter/property/icon", "addIcon", 0);
@@ -130,19 +134,25 @@
digester.addObjectCreate("faces-config/managed-bean/managed-property/map-entries", MapEntries.class);
digester.addSetNext("faces-config/managed-bean/managed-property/map-entries", "setMapEntries");
digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/key-class", "setKeyClass", 0);
- digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/value-class", "setValueClass", 0);
- digester.addObjectCreate("faces-config/managed-bean/managed-property/map-entries/map-entry", MapEntries.Entry.class);
+ digester
+ .addCallMethod("faces-config/managed-bean/managed-property/map-entries/value-class", "setValueClass", 0);
+ digester.addObjectCreate("faces-config/managed-bean/managed-property/map-entries/map-entry",
+ MapEntries.Entry.class);
digester.addSetNext("faces-config/managed-bean/managed-property/map-entries/map-entry", "addEntry");
digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/map-entry/key", "setKey", 0);
- digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/map-entry/null-value", "setNullValue");
+ digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/map-entry/null-value",
+ "setNullValue");
digester.addCallMethod("faces-config/managed-bean/managed-property/map-entries/map-entry/value", "setValue", 0);
digester.addObjectCreate("faces-config/managed-bean/managed-property/list-entries", ListEntries.class);
digester.addSetNext("faces-config/managed-bean/managed-property/list-entries", "setListEntries");
- digester.addCallMethod("faces-config/managed-bean/managed-property/list-entries/value-class", "setValueClass", 0);
- digester.addObjectCreate("faces-config/managed-bean/managed-property/list-entries/null-value", ListEntries.Entry.class);
+ digester.addCallMethod("faces-config/managed-bean/managed-property/list-entries/value-class", "setValueClass",
+ 0);
+ digester.addObjectCreate("faces-config/managed-bean/managed-property/list-entries/null-value",
+ ListEntries.Entry.class);
digester.addSetNext("faces-config/managed-bean/managed-property/list-entries/null-value", "addEntry");
digester.addCallMethod("faces-config/managed-bean/managed-property/list-entries/null-value", "setNullValue");
- digester.addObjectCreate("faces-config/managed-bean/managed-property/list-entries/value", ListEntries.Entry.class);
+ digester.addObjectCreate("faces-config/managed-bean/managed-property/list-entries/value",
+ ListEntries.Entry.class);
digester.addSetNext("faces-config/managed-bean/managed-property/list-entries/value", "addEntry");
digester.addCallMethod("faces-config/managed-bean/managed-property/list-entries/value", "setValue", 0);
digester.addObjectCreate("faces-config/managed-bean/map-entries", MapEntries.class);
@@ -191,20 +201,19 @@
digester.addCallParam("faces-config/validator/validator-class", 1);
}
-
public FacesConfig getFacesConfig(InputStream in, String systemId) throws IOException, SAXException
{
InputSource is = new InputSource(in);
is.setSystemId(systemId);
- //Fix for http://issues.apache.org/jira/browse/MYFACES-236
+ // Fix for http://issues.apache.org/jira/browse/MYFACES-236
FacesConfig config = (FacesConfig) digester.parse(is);
for (Application application : config.getApplications())
{
for (LocaleConfig localeConfig : application.getLocaleConfig())
{
- if(!localeConfig.getSupportedLocales().contains(localeConfig.getDefaultLocale()))
+ if (!localeConfig.getSupportedLocales().contains(localeConfig.getDefaultLocale()))
{
localeConfig.getSupportedLocales().add(localeConfig.getDefaultLocale());
}
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/elements/Factory.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/elements/Factory.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/elements/Factory.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/config/impl/digester/elements/Factory.java Sat Apr 4 18:44:59 2009
@@ -26,49 +26,114 @@
*/
public class Factory
{
-
- private List<String> applicationFactory = new ArrayList<String>();
- private List<String> facesContextFactory = new ArrayList<String>();
- private List<String> lifecycleFactory = new ArrayList<String>();
- private List<String> renderkitFactory = new ArrayList<String>();
+ private List<String> applicationFactories = new ArrayList<String>();
+ private List<String> exceptionHandlerFactories = new ArrayList<String>();
+ private List<String> externalContextFactories = new ArrayList<String>();
+ private List<String> facesContextFactories = new ArrayList<String>();
+ private List<String> lifecycleFactories = new ArrayList<String>();
+ private List<String> ViewDeclarationLanguageFactories = new ArrayList<String>();
+ private List<String> partialViewContextFactories = new ArrayList<String>();
+ private List<String> renderKitFactories = new ArrayList<String>();
+ private List<String> tagHandlerDelegateFactories = new ArrayList<String>();
+ private List<String> visitContextFactories = new ArrayList<String>();
public void addApplicationFactory(String factory)
{
- applicationFactory.add(factory);
+ applicationFactories.add(factory);
+ }
+
+ public void addExceptionHandlerFactory(String factory)
+ {
+ exceptionHandlerFactories.add(factory);
+ }
+
+ public void addExternalContextFactory(String factory)
+ {
+ externalContextFactories.add(factory);
}
public void addFacesContextFactory(String factory)
{
- facesContextFactory.add(factory);
+ facesContextFactories.add(factory);
}
public void addLifecycleFactory(String factory)
{
- lifecycleFactory.add(factory);
+ lifecycleFactories.add(factory);
+ }
+
+ public void addViewDeclarationLanguageFactory(String factory)
+ {
+ ViewDeclarationLanguageFactories.add(factory);
+ }
+
+ public void addPartialViewContextFactory(String factory)
+ {
+ partialViewContextFactories.add(factory);
}
public void addRenderkitFactory(String factory)
{
- renderkitFactory.add(factory);
+ renderKitFactories.add(factory);
+ }
+
+ public void addTagHandlerDelegateFactory(String factory)
+ {
+ tagHandlerDelegateFactories.add(factory);
+ }
+
+ public void addVisitContextFactory(String factory)
+ {
+ visitContextFactories.add(factory);
}
public List<String> getApplicationFactory()
{
- return applicationFactory;
+ return applicationFactories;
+ }
+
+ public List<String> getExceptionHandlerFactory()
+ {
+ return exceptionHandlerFactories;
+ }
+
+ public List<String> getExternalContextFactory()
+ {
+ return externalContextFactories;
}
public List<String> getFacesContextFactory()
{
- return facesContextFactory;
+ return facesContextFactories;
}
public List<String> getLifecycleFactory()
{
- return lifecycleFactory;
+ return lifecycleFactories;
+ }
+
+ public List<String> getViewDeclarationLanguageFactory()
+ {
+ return ViewDeclarationLanguageFactories;
+ }
+
+ public List<String> getPartialViewContextFactory()
+ {
+ return partialViewContextFactories;
}
public List<String> getRenderkitFactory()
{
- return renderkitFactory;
+ return renderKitFactories;
+ }
+
+ public List<String> getTagHandlerDelegateFactory()
+ {
+ return tagHandlerDelegateFactories;
+ }
+
+ public List<String> getVisitContextFactory()
+ {
+ return visitContextFactories;
}
}
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/ExceptionHandlerImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/ExceptionHandlerImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/ExceptionHandlerImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/ExceptionHandlerImpl.java Sat Apr 4 18:44:59 2009
@@ -19,17 +19,17 @@
package org.apache.myfaces.context;
import java.util.ArrayDeque;
-import java.util.Map;
+import java.util.Collections;
import java.util.Queue;
import javax.el.ELException;
import javax.faces.FacesException;
import javax.faces.context.ExceptionHandler;
-import javax.faces.context.FacesContext;
-import javax.faces.event.ExceptionEvent;
+import javax.faces.event.AbortProcessingException;
import javax.faces.event.ExceptionEventContext;
+import javax.faces.event.ExceptionQueuedEvent;
+import javax.faces.event.ExceptionQueuedEventContext;
import javax.faces.event.SystemEvent;
-import javax.servlet.ServletException;
/**
* DOCUMENT ME!
@@ -41,119 +41,154 @@
*/
public class ExceptionHandlerImpl extends ExceptionHandler
{
- private static final String UNHANDLED_QUEUE = "unhandled" + ExceptionHandlerImpl.class.getName();
- private static final String HANDLED_QUEUE = "handled" + ExceptionHandlerImpl.class.getName();
-
- private static final Queue<ExceptionEvent> EMPTY_QUEUE = new ArrayDeque<ExceptionEvent>(0);
+ private Queue<ExceptionQueuedEvent> handled;
+ private Queue<ExceptionQueuedEvent> unhandled;
+ /**
+ * {@inheritDoc}
+ */
@Override
- public ExceptionEvent getHandledExceptionEvent()
+ public ExceptionQueuedEvent getHandledExceptionQueuedEvent()
{
- return getUnhandledQueue(false).poll();
+ return handled == null ? null : handled.poll();
}
+ /**
+ * {@inheritDoc}
+ */
@Override
- public Iterable<ExceptionEvent> getHandledExceptionEvents()
+ public Iterable<ExceptionQueuedEvent> getHandledExceptionQueuedEvents()
{
- return getHandledQueue(false);
+ return handled == null ? Collections.<ExceptionQueuedEvent>emptyList() : handled;
}
+ /**
+ * {@inheritDoc}
+ */
@Override
public Throwable getRootCause(Throwable t)
{
- if ((t instanceof FacesException) || (t instanceof ELException))
+ if (t == null)
+ {
+ throw new NullPointerException("t");
+ }
+
+ while (t != null)
{
- Throwable cause = t.getCause();
- if (cause != null)
+ Class<?> clazz = t.getClass();
+ if (!clazz.equals(FacesException.class) && !clazz.equals(ELException.class))
{
- return getRootCause(cause);
+ return t;
}
+
+ t = t.getCause();
}
-
- return t;
+
+ return null;
}
+ /**
+ * {@inheritDoc}
+ */
@Override
- public Iterable<ExceptionEvent> getUnhandledExceptionEvents()
+ public Iterable<ExceptionQueuedEvent> getUnhandledExceptionQueuedEvents()
{
- return getUnhandledQueue(false);
+ return unhandled == null ? Collections.<ExceptionQueuedEvent>emptyList() : unhandled;
}
+ /**
+ * {@inheritDoc}
+ */
@Override
public void handle() throws FacesException
{
- /*
- * The default implementation must take the first ExceptionEvent queued from a call to
- * processEvent(javax.faces.event.SystemEvent), unwrap it with a call to getRootCause(java.lang.Throwable),
- * re-wrap it in a ServletException and re-throw it. The default implementation must take special action in the
- * following cases.
- *
- * If an unchecked Exception occurs as a result of calling a method annotated with PreDestroy on a managed bean,
- * the Exception must be logged and swallowed.
- *
- * If the Exception originates inside the ELContextListener.removeElContextListener, the Exception must be
- * logged and swallowed.
- */
- ExceptionEvent event = getHandledExceptionEvent();
- if (event != null)
+ if (unhandled != null && !unhandled.isEmpty())
{
- getHandledQueue(true).add(event);
-
- ExceptionEventContext exceptionContext = (ExceptionEventContext) event.getSource();
-
- // FIXME This method must throw ServletException
- throw new FacesException(new ServletException(getRootCause(exceptionContext.getException())));
+ if (handled == null)
+ {
+ handled = new ArrayDeque<ExceptionQueuedEvent>(1);
+ }
+
+ do
+ {
+ // For each ExceptionEvent in the list
+
+ // The implementation must also ensure that subsequent calls to getUnhandledExceptionEvents()
+ // do not include that ExceptionEvent instance
+ ExceptionQueuedEvent event = unhandled.remove();
+
+ // call its getContext() method
+ ExceptionQueuedEventContext context = event.getContext();
+
+ // and call getException() on the returned result
+ Throwable exception = context.getException();
+
+ // Upon encountering the first such Exception that is not an instance of
+ // javax.faces.event.AbortProcessingException
+ if (!shouldSkip(exception))
+ {
+ // the corresponding ExceptionEvent must be set so that a subsequent call to
+ // getHandledExceptionEvent() or getHandledExceptionEvents() returns that
+ // ExceptionEvent instance.
+ // Should be ok to clear since this if never executed more than once per handle() calls
+ handled.clear();
+ handled.add(event);
+
+ // Re-wrap toThrow in a ServletException or (PortletException, if in a portlet environment)
+ // and throw it
+ // FIXME: The spec says to NOT use a FacesException to propagate the exception, but I see
+ // no other way as ServletException is not a RuntimeException
+ throw new FacesException(wrap(getRethrownException(exception)));
+ }
+ } while (!unhandled.isEmpty());
}
}
+ /**
+ * {@inheritDoc}
+ */
@Override
public boolean isListenerForSource(Object source)
{
- return source instanceof ExceptionEvent;
+ return source instanceof ExceptionEventContext;
}
+ /**
+ * {@inheritDoc}
+ */
@Override
- public void processEvent(SystemEvent exceptionEvent)
+ public void processEvent(SystemEvent exceptionQueuedEvent) throws AbortProcessingException
{
- getUnhandledQueue(true).add((ExceptionEvent) exceptionEvent);
+ if (unhandled == null)
+ {
+ unhandled = new ArrayDeque<ExceptionQueuedEvent>(1);
+ }
+
+ unhandled.add((ExceptionQueuedEvent)exceptionQueuedEvent);
}
-
- private Queue<ExceptionEvent> getHandledQueue(boolean create)
+
+ protected Throwable getRethrownException(Throwable exception)
{
- return getQueue(HANDLED_QUEUE, create);
+ // Let toRethrow be either the result of calling getRootCause() on the Exception,
+ // or the Exception itself, whichever is non-null
+ Throwable toRethrow = getRootCause(exception);
+ if (toRethrow == null)
+ {
+ toRethrow = exception;
+ }
+
+ return toRethrow;
}
-
- private Queue<ExceptionEvent> getUnhandledQueue(boolean create)
+
+ protected Throwable wrap(Throwable exception)
{
- return getQueue(UNHANDLED_QUEUE, create);
+ // TODO: This method should be abstract and implemented by a Portlet or Servlet version instance
+ // wrapping to either ServletException or PortletException
+ return exception;
}
-
- @SuppressWarnings("unchecked")
- private Queue<ExceptionEvent> getQueue(String queueName, boolean create)
+
+ protected boolean shouldSkip(Throwable exception)
{
- assert queueName != null;
-
- FacesContext context = FacesContext.getCurrentInstance();
-
- Map<Object, Object> attributes = context.getAttributes();
-
- Queue<ExceptionEvent> queue = (Queue<ExceptionEvent>) attributes.get(queueName);
-
- if (queue == null)
- {
- if (create)
- {
- queue = new ArrayDeque<ExceptionEvent>(1);
-
- attributes.put(queueName, queue);
- }
- else
- {
- queue = EMPTY_QUEUE;
- }
- }
-
- return queue;
+ return exception instanceof AbortProcessingException;
}
-
}
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/FacesContextImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/FacesContextImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/FacesContextImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/FacesContextImpl.java Sat Apr 4 18:44:59 2009
@@ -67,36 +67,28 @@
public static final String METHOD_ISAJAXREQUEST = "isAjaxRequest";
private static final String METHOD_ADDMESSAGE = "addMessage";
- private static final String METHOD_ENABLERESPONSEWRITING = "enableResponseWriting";
private static final String METHOD_GETAPPLICATION = "getApplication";
private static final String METHOD_GETATTRIBUTES = "getAttributes";
private static final String METHOD_GETCLIENTIDSWITHMESSAGES = "getClientIdsWithMessages";
private static final String METHOD_GETCURRENTPHASEID = "getCurrentPhaseId";
private static final String METHOD_GETELCONTEXT = "getELContext";
- private static final String METHOD_GETEXECUTEPHASECLIENTIDS = "getExecutePhaseClientIds";
private static final String METHOD_GETEXTERNALCONTEXT = "getExternalContext";
private static final String METHOD_GETMAXIMUMSEVERITY = "getMaximumSeverity";
private static final String METHOD_GETMESSAGES = "getMessages";
private static final String METHOD_GETRENDERKIT = "getRenderKit";
- private static final String METHOD_GETRENDERPHASECLIENTIDS = "getRenderPhaseClientIds";
private static final String METHOD_GETRESPONSECOMPLETE = "getResponseComplete";
private static final String METHOD_GETRESPONSESTREAM = "getResponseStream";
private static final String METHOD_GETRESPONSEWRITER = "getResponseWriter";
- private static final String METHOD_ISEXECUTENONE = "isExecuteNone";
- private static final String METHOD_ISRENDERNONE = "isRenderNone";
private static final String METHOD_RELEASE = "release";
private static final String METHOD_RENDERRESPONSE = "renderResponse";
private static final String METHOD_RESPONSECOMPLETE = "responseComplete";
private static final String METHOD_RESPONSEWRITER = "responseWriter";
private static final String METHOD_SETCURRENTPHASEID = "setCurrentPhaseId";
- private static final String METHOD_SETEXECUTEPHASECLIENTIDS = "setExecutePhaseClientIds";
private static final String METHOD_SETEXTERNALCONTEXT = "setExternalContext";
private static final String METHOD_SETRESPONSESTREAM = "setResponseStream";
private static final String METHOD_SETRESPONSEWRITER = "setResponseWriter";
private static final String METHOD_SETVIEWROOT = "setViewRoot";
private static final String METHOD_GETVIEWROOT = "getViewRoot";
- private static final String METHOD_ISRENDERALL = "isRenderAll";
- private static final String METHOD_SETRENDERALL = "setRenderAll";
static final String RE_SPLITTER = "[\\s\\t\\r\\n]*\\,[\\s\\t\\r\\n]*";
public static final String AJAX_REQ_KEY = "javax.faces.partial.ajax";
// ~ Instance fields ----------------------------------------------------------------------------
@@ -118,12 +110,6 @@
private ELContext _elContext;
private Map<Object, Object> _attributes = null;
private ResponseSwitch _responseWrapper = null;
- private List<String> _renderPhaseClientIds = null;
- private List<String> _executePhaseClientIds = null;
- private Boolean _renderAll = null;
-
- /* helper to speed things up on the isAjaxRequest method */
- private Boolean _ajaxRequest = null;
// ~ Constructors -------------------------------------------------------------------------------
public FacesContextImpl(final ServletContext servletContext, final ServletRequest servletRequest,
@@ -547,32 +533,38 @@
*/
private final List<String> getRequestParameterList(String key, String emptyValue)
{
-
+ // FIXME: This method assume that getParameterMap returns a Map<String, String>, but the spec
+ // says it's supposed to be Map<String, String[]>. -= Simon Lessard =-
Map paramMap = ((ServletRequest) getExternalContext().getRequest()).getParameterMap();
+
String clientIds = (String) paramMap.get(key);
if (clientIds == null)
{// no value given
- return Collections.EMPTY_LIST;
+ return Collections.<String>emptyList();
}
+
clientIds = clientIds.trim();
if (clientIds.equals("") || (emptyValue != null && clientIds.equals(emptyValue)))
{// empty String!
- return Collections.EMPTY_LIST;
+ return Collections.<String>emptyList();
}
/**
* we have to process the params list we now split the params as fast as possible
*/
String[] splitted = clientIds.split(RE_SPLITTER);
+
/*
* we have to retrim the first and last entry we could have pending blanks!
*/
splitted[0] = splitted[0].trim();
+
int trimLast = splitted.length - 1;
if (trimLast > 0)
{// all others trimmed by the re
splitted[trimLast] = splitted[trimLast].trim();
}
+
return Arrays.asList(splitted);
}
@@ -591,235 +583,237 @@
}
}
- private class PartialViewContextImpl extends PartialViewContext
- {
-
- /**
- * if set to false the response writing is suppressed this construct has been added to deal with subview lifecycles
- * in the ajax cycle
- *
- * @param enable
- * if set to true the response is routed through if set to false the response is suppressed!
- *
- * @throws IllegalStateException
- * if the current context already is released!
- */
- @Override
- public void enableResponseWriting(boolean enable)
- {
- assertNotReleased(METHOD_ENABLERESPONSEWRITING);
-
- _responseWrapper.setEnabled(enable);
- }
-
- @Override
- public Map<Object, Object> getAttributes()
- {
- return FacesContextImpl.this.getAttributes();
- }
-
- /**
- * @return the list of client ids to be processed in the execute phase null if all have to be processed The client
- * ids either must be set via the setter or being present by having a PARTIAL_EXECUTE_PARAM_NAME with a
- * value set non existent or NO_PARTIAL_PHASE_CLIENT_IDS values in the request map and a non set local list
- * result in an empty list as return value!
- *
- * @since 2.0
- * @throws IllegalStateException
- * if the current context already is released!
- */
- @Override
- public List<String> getExecutePhaseClientIds()
- {
- assertNotReleased(METHOD_GETEXECUTEPHASECLIENTIDS);
-
- if (_executePhaseClientIds != null)
- {
- return _executePhaseClientIds;
- }
-
- _executePhaseClientIds = getRequestParameterList(PARTIAL_EXECUTE_PARAM_NAME, NO_PARTIAL_PHASE_CLIENT_IDS);
-
- return _executePhaseClientIds;
- }
-
- @Override
- public ResponseWriter getPartialResponseWriter()
- {
- // TODO: JSF 2.0, missing impl
- return null;
- }
-
- /**
- *
- * @return a list of client ids which are fetched from the request <b>parameter</b> map. The key for the map entries
- * is {@link javax.faces.context.FacesContext.PARTIAL_RENDER_PARAM_NAME}. The list is a comma separated list
- * of client ids in the request map! if the value
- * {@link javax.faces.context.FacesContext.NO_PARTIAL_PHASE_CLIENT_IDS} is set or null or empty then an
- * empty list is returned!
- *
- * The client ids are the ones which have to be processed during the render phase
- *
- * @since 2.0
- * @throws IllegalStateException
- * if the current context already is released!
- */
- @Override
- public List<String> getRenderPhaseClientIds()
- {
- assertNotReleased(METHOD_GETRENDERPHASECLIENTIDS);
-
- /* already processed or set from the outside */
- if (null != _renderPhaseClientIds)
- {
- return _renderPhaseClientIds;
- }
-
- _renderPhaseClientIds = getRequestParameterList(PARTIAL_RENDER_PARAM_NAME, NO_PARTIAL_PHASE_CLIENT_IDS);
-
- return _renderPhaseClientIds;
- }
-
- /**
- * TODO #51 in progress is ajax request implementation according to the spec, javax.faces.partial must be present
- * and then it will return true if none is present it will return false since we only have to check it once a lazy
- * init cannot be done because theoretically someone can push in a request wrapper!
- *
- */
- @Override
- public boolean isAjaxRequest()
- {
-
- assertNotReleased(METHOD_ISAJAXREQUEST);
-
- /*
- * A speed shortcut here is feasable but it has to be discussed we have those in several parts of the
- * facesContext and even most of them implicetly enforced by the spec itself. Hence i set it here.
- *
- *
- * The problem is that request parameter maps can be delivered by RequestWrappers hence, you cannot rely on the
- * map being entirely immutable. But leaving it out probably is also a no option since this method probably will
- * be called by every component renderer and a O(log(n)) lookup is not a serious performance impact but serious
- * enough!
- *
- * This has to be cleared up with the spec people! This should not cause a problem under normal circumstances
- * however!
- */
- if (_ajaxRequest == null)
- {
- Map<String, String> requestParamMap = getExternalContext().getRequestParameterMap();
- _ajaxRequest = requestParamMap.containsKey(AJAX_REQ_KEY);
- }
-
- return _ajaxRequest;
- }
-
- /**
- * @return is render none return true if {@link #PARTIAL_EXECUTE_PARAM_NAME} is set in the current request map! and
- * the value is set to {@link #NO_PARTIAL_PHASE_CLIENT_IDS}. Otherwise return false!
- */
- @Override
- public boolean isExecuteNone()
- {
- assertNotReleased(METHOD_ISEXECUTENONE);
-
- Map<String, String> requestMap = getExternalContext().getRequestParameterMap();
-
- String param = (String) requestMap.get(PARTIAL_EXECUTE_PARAM_NAME);
-
- return NO_PARTIAL_PHASE_CLIENT_IDS.equals(param);
- }
-
- /**
- * @return true in case of PARTIAL_RENDER_PARAM_NAME being set and its value is NO_PARTIAL_PHASE_CLIENT_IDS.
- * Otherwise return false
- */
- @Override
- public boolean isRenderNone()
- {
- assertNotReleased(METHOD_ISRENDERNONE);
-
- Map<String, String> requestMap = getExternalContext().getRequestParameterMap();
-
- String param = (String) requestMap.get(PARTIAL_RENDER_PARAM_NAME);
-
- return NO_PARTIAL_PHASE_CLIENT_IDS.equals(param);
- }
-
- /**
- * @return true in case of {@link javax.faces.context.FacesContext.isAjaxRequest()} returns true, {@link
- * javax.faces.context.FacesContext.isRenderNone()} returns false and {@link
- * javax.faces.context.FacesContext.getRenderPhaseClientIds()} returns also an empty list
- */
- @Override
- public boolean isRenderAll()
- {
- assertNotReleased(METHOD_ISRENDERALL);
-
- if (_renderAll != null)
- {
- return _renderAll;
- }
- // I assume doing the check once per request is correct
- // there is no way to determine if there was an override
- // of the renderAll according to the spec!
- List<String> renderClientIds = getRenderPhaseClientIds();
-
- _renderAll = renderClientIds.isEmpty() && isAjaxRequest() && !isRenderNone();
-
- return _renderAll;
- }
-
- @Override
- public void release()
- {
- FacesContextImpl.this.release();
- }
-
- /**
- * @param executePhaseClientIds
- * the list of client ids to be processed by the execute phase
- *
- * @since 2.0
- * @throws IllegalStateException
- * if the current context already is released!
- */
- @Override
- public void setExecutePhaseClientIds(List<String> executePhaseClientIds)
- {
- assertNotReleased(METHOD_SETEXECUTEPHASECLIENTIDS);
-
- _executePhaseClientIds = executePhaseClientIds;
- }
-
- /**
- * override for the isRenderall determination mechanism if set to true the isRenderAll() must! return true! If
- * nothing is set the isRenderall() does a fallback into its renderall determination algorithm!
- *
- * @param renderAll
- * if set to true isRenderAll() will return true on the subsequent calls in the request!
- */
- @Override
- public void setRenderAll(boolean renderAll)
- {
- assertNotReleased(METHOD_SETRENDERALL);
-
- _renderAll = renderAll;// autoboxing does the conversation here, no need to do casting
- }
-
- /**
- * @param the
- * list of client ids to be processed by the render phase!
- * @since 2.0
- * @throws IllegalStateException
- * if the current context already is released!
- */
- @Override
- public void setRenderPhaseClientIds(List<String> renderPhaseClientIds)
- {
- assertNotReleased(METHOD_SETEXECUTEPHASECLIENTIDS);
-
- _renderPhaseClientIds = renderPhaseClientIds;
- }
- }
+// TODO: MOVE - PartialViewContext is no longer created by FacesContext in the latest spec, see
+// PartialViewContextFactory
+// private class PartialViewContextImpl extends PartialViewContext
+// {
+//
+// /**
+// * if set to false the response writing is suppressed this construct has been added to deal with subview lifecycles
+// * in the ajax cycle
+// *
+// * @param enable
+// * if set to true the response is routed through if set to false the response is suppressed!
+// *
+// * @throws IllegalStateException
+// * if the current context already is released!
+// */
+// @Override
+// public void enableResponseWriting(boolean enable)
+// {
+// assertNotReleased(METHOD_ENABLERESPONSEWRITING);
+//
+// _responseWrapper.setEnabled(enable);
+// }
+//
+// @Override
+// public Map<Object, Object> getAttributes()
+// {
+// return FacesContextImpl.this.getAttributes();
+// }
+//
+// /**
+// * @return the list of client ids to be processed in the execute phase null if all have to be processed The client
+// * ids either must be set via the setter or being present by having a PARTIAL_EXECUTE_PARAM_NAME with a
+// * value set non existent or NO_PARTIAL_PHASE_CLIENT_IDS values in the request map and a non set local list
+// * result in an empty list as return value!
+// *
+// * @since 2.0
+// * @throws IllegalStateException
+// * if the current context already is released!
+// */
+// @Override
+// public List<String> getExecutePhaseClientIds()
+// {
+// assertNotReleased(METHOD_GETEXECUTEPHASECLIENTIDS);
+//
+// if (_executePhaseClientIds != null)
+// {
+// return _executePhaseClientIds;
+// }
+//
+// _executePhaseClientIds = getRequestParameterList(PARTIAL_EXECUTE_PARAM_NAME, NO_PARTIAL_PHASE_CLIENT_IDS);
+//
+// return _executePhaseClientIds;
+// }
+//
+// @Override
+// public ResponseWriter getPartialResponseWriter()
+// {
+// // TODO: JSF 2.0, missing impl
+// return null;
+// }
+//
+// /**
+// *
+// * @return a list of client ids which are fetched from the request <b>parameter</b> map. The key for the map entries
+// * is {@link javax.faces.context.FacesContext.PARTIAL_RENDER_PARAM_NAME}. The list is a comma separated list
+// * of client ids in the request map! if the value
+// * {@link javax.faces.context.FacesContext.NO_PARTIAL_PHASE_CLIENT_IDS} is set or null or empty then an
+// * empty list is returned!
+// *
+// * The client ids are the ones which have to be processed during the render phase
+// *
+// * @since 2.0
+// * @throws IllegalStateException
+// * if the current context already is released!
+// */
+// @Override
+// public List<String> getRenderPhaseClientIds()
+// {
+// assertNotReleased(METHOD_GETRENDERPHASECLIENTIDS);
+//
+// /* already processed or set from the outside */
+// if (null != _renderPhaseClientIds)
+// {
+// return _renderPhaseClientIds;
+// }
+//
+// _renderPhaseClientIds = getRequestParameterList(PARTIAL_RENDER_PARAM_NAME, NO_PARTIAL_PHASE_CLIENT_IDS);
+//
+// return _renderPhaseClientIds;
+// }
+//
+// /**
+// * TODO #51 in progress is ajax request implementation according to the spec, javax.faces.partial must be present
+// * and then it will return true if none is present it will return false since we only have to check it once a lazy
+// * init cannot be done because theoretically someone can push in a request wrapper!
+// *
+// */
+// @Override
+// public boolean isAjaxRequest()
+// {
+//
+// assertNotReleased(METHOD_ISAJAXREQUEST);
+//
+// /*
+// * A speed shortcut here is feasable but it has to be discussed we have those in several parts of the
+// * facesContext and even most of them implicetly enforced by the spec itself. Hence i set it here.
+// *
+// *
+// * The problem is that request parameter maps can be delivered by RequestWrappers hence, you cannot rely on the
+// * map being entirely immutable. But leaving it out probably is also a no option since this method probably will
+// * be called by every component renderer and a O(log(n)) lookup is not a serious performance impact but serious
+// * enough!
+// *
+// * This has to be cleared up with the spec people! This should not cause a problem under normal circumstances
+// * however!
+// */
+// if (_ajaxRequest == null)
+// {
+// Map<String, String> requestParamMap = getExternalContext().getRequestParameterMap();
+// _ajaxRequest = requestParamMap.containsKey(AJAX_REQ_KEY);
+// }
+//
+// return _ajaxRequest;
+// }
+//
+// /**
+// * @return is render none return true if {@link #PARTIAL_EXECUTE_PARAM_NAME} is set in the current request map! and
+// * the value is set to {@link #NO_PARTIAL_PHASE_CLIENT_IDS}. Otherwise return false!
+// */
+// @Override
+// public boolean isExecuteNone()
+// {
+// assertNotReleased(METHOD_ISEXECUTENONE);
+//
+// Map<String, String> requestMap = getExternalContext().getRequestParameterMap();
+//
+// String param = (String) requestMap.get(PARTIAL_EXECUTE_PARAM_NAME);
+//
+// return NO_PARTIAL_PHASE_CLIENT_IDS.equals(param);
+// }
+//
+// /**
+// * @return true in case of PARTIAL_RENDER_PARAM_NAME being set and its value is NO_PARTIAL_PHASE_CLIENT_IDS.
+// * Otherwise return false
+// */
+// @Override
+// public boolean isRenderNone()
+// {
+// assertNotReleased(METHOD_ISRENDERNONE);
+//
+// Map<String, String> requestMap = getExternalContext().getRequestParameterMap();
+//
+// String param = (String) requestMap.get(PARTIAL_RENDER_PARAM_NAME);
+//
+// return NO_PARTIAL_PHASE_CLIENT_IDS.equals(param);
+// }
+//
+// /**
+// * @return true in case of {@link javax.faces.context.FacesContext.isAjaxRequest()} returns true, {@link
+// * javax.faces.context.FacesContext.isRenderNone()} returns false and {@link
+// * javax.faces.context.FacesContext.getRenderPhaseClientIds()} returns also an empty list
+// */
+// @Override
+// public boolean isRenderAll()
+// {
+// assertNotReleased(METHOD_ISRENDERALL);
+//
+// if (_renderAll != null)
+// {
+// return _renderAll;
+// }
+// // I assume doing the check once per request is correct
+// // there is no way to determine if there was an override
+// // of the renderAll according to the spec!
+// List<String> renderClientIds = getRenderPhaseClientIds();
+//
+// _renderAll = renderClientIds.isEmpty() && isAjaxRequest() && !isRenderNone();
+//
+// return _renderAll;
+// }
+//
+// @Override
+// public void release()
+// {
+// FacesContextImpl.this.release();
+// }
+//
+// /**
+// * @param executePhaseClientIds
+// * the list of client ids to be processed by the execute phase
+// *
+// * @since 2.0
+// * @throws IllegalStateException
+// * if the current context already is released!
+// */
+// @Override
+// public void setExecutePhaseClientIds(List<String> executePhaseClientIds)
+// {
+// assertNotReleased(METHOD_SETEXECUTEPHASECLIENTIDS);
+//
+// _executePhaseClientIds = executePhaseClientIds;
+// }
+//
+// /**
+// * override for the isRenderall determination mechanism if set to true the isRenderAll() must! return true! If
+// * nothing is set the isRenderall() does a fallback into its renderall determination algorithm!
+// *
+// * @param renderAll
+// * if set to true isRenderAll() will return true on the subsequent calls in the request!
+// */
+// @Override
+// public void setRenderAll(boolean renderAll)
+// {
+// assertNotReleased(METHOD_SETRENDERALL);
+//
+// _renderAll = renderAll;// autoboxing does the conversation here, no need to do casting
+// }
+//
+// /**
+// * @param the
+// * list of client ids to be processed by the render phase!
+// * @since 2.0
+// * @throws IllegalStateException
+// * if the current context already is released!
+// */
+// @Override
+// public void setRenderPhaseClientIds(List<String> renderPhaseClientIds)
+// {
+// assertNotReleased(METHOD_SETEXECUTEPHASECLIENTIDS);
+//
+// _renderPhaseClientIds = renderPhaseClientIds;
+// }
+// }
}
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/ServletExternalContextImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/ServletExternalContextImpl.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/ServletExternalContextImpl.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/context/servlet/ServletExternalContextImpl.java Sat Apr 4 18:44:59 2009
@@ -645,11 +645,6 @@
}
@Override
- public int getContentLength() {
- return _servletRequest.getContentLength();
- }
-
- @Override
public String getContextName() {
return _servletContext.getServletContextName();
}
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java Sat Apr 4 18:44:59 2009
@@ -24,8 +24,8 @@
import javax.faces.application.ViewHandler;
import javax.faces.component.UIViewRoot;
import javax.faces.context.FacesContext;
-import javax.faces.event.AfterAddToParentEvent;
import javax.faces.event.PhaseId;
+import javax.faces.event.PostAddToViewEvent;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -54,17 +54,22 @@
// init the View
Application application = facesContext.getApplication();
ViewHandler viewHandler = application.getViewHandler();
+
+ // Call initView() on the ViewHandler. This will set the character encoding properly for this request.
viewHandler.initView(facesContext);
UIViewRoot viewRoot = facesContext.getViewRoot();
RestoreViewSupport restoreViewSupport = getRestoreViewSupport();
+ // Examine the FacesContext instance for the current request. If it already contains a UIViewRoot
if (viewRoot != null)
{
if (log.isTraceEnabled())
log.trace("View already exists in the FacesContext");
-
+
+ // Set the locale on this UIViewRoot to the value returned by the getRequestLocale() method on the
+ // ExternalContext for this request
viewRoot.setLocale(facesContext.getExternalContext().getRequestLocale());
restoreViewSupport.processComponentBinding(facesContext, viewRoot);
return false;
@@ -106,7 +111,7 @@
// Subscribe the newly created UIViewRoot instance to the AfterAddToParent event, passing the
// UIViewRoot instance itself as the listener.
- viewRoot.subscribeToEvent(AfterAddToParentEvent.class, viewRoot);
+ viewRoot.subscribeToEvent(PostAddToViewEvent.class, viewRoot);
// Store the new UIViewRoot instance in the FacesContext.
facesContext.setViewRoot(viewRoot);
@@ -115,7 +120,7 @@
facesContext.renderResponse();
// Publish an AfterAddToParent event with the created UIViewRoot as the event source.
- application.publishEvent(AfterAddToParentEvent.class, viewRoot);
+ application.publishEvent(PostAddToViewEvent.class, viewRoot);
}
return false;
Modified: myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/taglib/core/ValidateRegexTag.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/taglib/core/ValidateRegexTag.java?rev=761982&r1=761981&r2=761982&view=diff
==============================================================================
--- myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/taglib/core/ValidateRegexTag.java (original)
+++ myfaces/core/branches/2_0_0/impl/src/main/java/org/apache/myfaces/taglib/core/ValidateRegexTag.java Sat Apr 4 18:44:59 2009
@@ -18,14 +18,13 @@
*/
package org.apache.myfaces.taglib.core;
-import javax.faces.validator.Validator;
-import javax.faces.validator.RegexValidator;
+import javax.el.ELContext;
+import javax.el.ValueExpression;
import javax.faces.context.FacesContext;
+import javax.faces.validator.RegexValidator;
+import javax.faces.validator.Validator;
import javax.faces.webapp.ValidatorELTag;
import javax.servlet.jsp.JspException;
-import javax.el.ValueExpression;
-import javax.el.ExpressionFactory;
-import javax.el.ELContext;
/**
* JSP Tag class for {@link javax.faces.validator.RegexValidator}.