You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mb...@apache.org on 2007/03/16 14:24:21 UTC

svn commit: r518967 [14/20] - in /myfaces/core/branches/jsf12: api/src/main/java-templates/javax/faces/component/ api/src/main/java/javax/faces/application/ api/src/main/java/javax/faces/component/ api/src/main/java/javax/faces/context/ api/src/main/ja...

Modified: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/renderkits/javax/faces/html_basic.xml
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/renderkits/javax/faces/html_basic.xml?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/renderkits/javax/faces/html_basic.xml (original)
+++ myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/renderkits/javax/faces/html_basic.xml Fri Mar 16 06:24:10 2007
@@ -1,29 +1,29 @@
-<?xml version="1.0" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied.  See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<faces-config version="1.2"
-              xmlns="http://java.sun.com/xml/ns/javaee"
-              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin">
-    <render-kit>
-        <render-kit-id>HTML_BASIC</render-kit-id>
-        <render-kit-class>org.apache.myfaces.renderkit.html.HtmlRenderKitImpl</render-kit-class>
-        <render-kit-extension>
-        </render-kit-extension>
-    </render-kit>
+<?xml version="1.0" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<faces-config version="1.2"
+              xmlns="http://java.sun.com/xml/ns/javaee"
+              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin">
+    <render-kit>
+        <render-kit-id>HTML_BASIC</render-kit-id>
+        <render-kit-class>org.apache.myfaces.renderkit.html.HtmlRenderKitImpl</render-kit-class>
+        <render-kit-extension>
+        </render-kit-extension>
+    </render-kit>
 </faces-config>

Propchange: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/renderkits/javax/faces/html_basic.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/DoubleRange.xml
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/DoubleRange.xml?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/DoubleRange.xml (original)
+++ myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/DoubleRange.xml Fri Mar 16 06:24:10 2007
@@ -1,28 +1,28 @@
-<?xml version="1.0" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied.  See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
-              xmlns:tr="http://myfaces.apache.org/trinidad"
-              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
-              xmlns:xhtml="http://www.w3.org/1999/xhtml">
-    <validator>
-        <validator-id>javax.faces.DoubleRange</validator-id>
-        <validator-class>javax.faces.validator.DoubleRangeValidator</validator-class>
-    </validator>
-</faces-config>
+<?xml version="1.0" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
+              xmlns:tr="http://myfaces.apache.org/trinidad"
+              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
+              xmlns:xhtml="http://www.w3.org/1999/xhtml">
+    <validator>
+        <validator-id>javax.faces.DoubleRange</validator-id>
+        <validator-class>javax.faces.validator.DoubleRangeValidator</validator-class>
+    </validator>
+</faces-config>

Propchange: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/DoubleRange.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/Length.xml
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/Length.xml?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/Length.xml (original)
+++ myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/Length.xml Fri Mar 16 06:24:10 2007
@@ -1,28 +1,28 @@
-<?xml version="1.0" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied.  See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
-              xmlns:tr="http://myfaces.apache.org/trinidad"
-              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
-              xmlns:xhtml="http://www.w3.org/1999/xhtml">
-    <validator>
-        <validator-id>javax.faces.Length</validator-id>
-        <validator-class>javax.faces.validator.LengthValidator</validator-class>
-    </validator>
-</faces-config>
+<?xml version="1.0" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
+              xmlns:tr="http://myfaces.apache.org/trinidad"
+              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
+              xmlns:xhtml="http://www.w3.org/1999/xhtml">
+    <validator>
+        <validator-id>javax.faces.Length</validator-id>
+        <validator-class>javax.faces.validator.LengthValidator</validator-class>
+    </validator>
+</faces-config>

Propchange: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/Length.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/LongRange.xml
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/LongRange.xml?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/LongRange.xml (original)
+++ myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/LongRange.xml Fri Mar 16 06:24:10 2007
@@ -1,28 +1,28 @@
-<?xml version="1.0" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements.  See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership.  The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied.  See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
-              xmlns:tr="http://myfaces.apache.org/trinidad"
-              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
-              xmlns:xhtml="http://www.w3.org/1999/xhtml">
-    <validator>
-        <validator-id>javax.faces.LongRange</validator-id>
-        <validator-class>javax.faces.validator.LongRangeValidator</validator-class>
-    </validator>
-</faces-config>
+<?xml version="1.0" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
+              xmlns:tr="http://myfaces.apache.org/trinidad"
+              xmlns:mfp="http://myfaces.apache.org/maven-faces-plugin"
+              xmlns:xhtml="http://www.w3.org/1999/xhtml">
+    <validator>
+        <validator-id>javax.faces.LongRange</validator-id>
+        <validator-class>javax.faces.validator.LongRangeValidator</validator-class>
+    </validator>
+</faces-config>

Propchange: myfaces/core/branches/jsf12/build/src/main/resources/META-INF/maven-faces-plugin/validators/javax/faces/LongRange.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/jsp/ViewResponseWrapper.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/jsp/ViewResponseWrapper.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/jsp/ViewResponseWrapper.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/jsp/ViewResponseWrapper.java Fri Mar 16 06:24:10 2007
@@ -1,82 +1,82 @@
-package org.apache.myfaces.application.jsp;
-
-import java.io.CharArrayWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpServletResponseWrapper;
-
-/**
- * @author Bruno Aranda (latest modification by $Author$)
- * @version $Revision$ $Date$
- */
-public class ViewResponseWrapper extends HttpServletResponseWrapper
-{
-    private PrintWriter _writer;
-    private CharArrayWriter _charArrayWriter;
-    private int _status = HttpServletResponse.SC_OK;
-
-    public ViewResponseWrapper(HttpServletResponse httpServletResponse)
-    {
-        super(httpServletResponse);
-    }
-
-    @Override
-    public void sendError(int status) throws IOException
-    {
-        super.sendError(status);
-        _status = status;
-    }
-
-    @Override
-    public void sendError(int status, String errorMessage) throws IOException
-    {
-        super.sendError(status, errorMessage);
-        _status = status;
-    }
-
-    @Override
-    public void setStatus(int status)
-    {
-        super.setStatus(status);
-        _status = status;
-    }
-
-    @Override
-    public void setStatus(int status, String errorMessage)
-    {
-        super.setStatus(status, errorMessage);
-        _status = status;
-    }
-
-    public int getStatus()
-    {
-        return _status;
-    }
-
-    public void flushToWrappedResponse() throws IOException
-    {
-        _charArrayWriter.writeTo(getResponse().getWriter());
-        _charArrayWriter.reset();
-        _writer.flush();
-        
-    }
-
-    @Override
-    public PrintWriter getWriter() throws IOException
-    {
-        if (_writer == null)
-        {
-            _charArrayWriter = new CharArrayWriter(4096);
-            _writer = new PrintWriter(_charArrayWriter);
-        }
-        return _writer;
-    }
-
-    @Override
-    public String toString()
-    {
-        return _charArrayWriter.toString();
-    }
-}
+package org.apache.myfaces.application.jsp;
+
+import java.io.CharArrayWriter;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpServletResponseWrapper;
+
+/**
+ * @author Bruno Aranda (latest modification by $Author$)
+ * @version $Revision$ $Date$
+ */
+public class ViewResponseWrapper extends HttpServletResponseWrapper
+{
+    private PrintWriter _writer;
+    private CharArrayWriter _charArrayWriter;
+    private int _status = HttpServletResponse.SC_OK;
+
+    public ViewResponseWrapper(HttpServletResponse httpServletResponse)
+    {
+        super(httpServletResponse);
+    }
+
+    @Override
+    public void sendError(int status) throws IOException
+    {
+        super.sendError(status);
+        _status = status;
+    }
+
+    @Override
+    public void sendError(int status, String errorMessage) throws IOException
+    {
+        super.sendError(status, errorMessage);
+        _status = status;
+    }
+
+    @Override
+    public void setStatus(int status)
+    {
+        super.setStatus(status);
+        _status = status;
+    }
+
+    @Override
+    public void setStatus(int status, String errorMessage)
+    {
+        super.setStatus(status, errorMessage);
+        _status = status;
+    }
+
+    public int getStatus()
+    {
+        return _status;
+    }
+
+    public void flushToWrappedResponse() throws IOException
+    {
+        _charArrayWriter.writeTo(getResponse().getWriter());
+        _charArrayWriter.reset();
+        _writer.flush();
+        
+    }
+
+    @Override
+    public PrintWriter getWriter() throws IOException
+    {
+        if (_writer == null)
+        {
+            _charArrayWriter = new CharArrayWriter(4096);
+            _writer = new PrintWriter(_charArrayWriter);
+        }
+        return _writer;
+    }
+
+    @Override
+    public String toString()
+    {
+        return _charArrayWriter.toString();
+    }
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/application/jsp/ViewResponseWrapper.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/FacesConfigValidator.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/FacesConfigValidator.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/FacesConfigValidator.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/FacesConfigValidator.java Fri Mar 16 06:24:10 2007
@@ -1,142 +1,142 @@
-/*
- * Copyright 2004-2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-package org.apache.myfaces.config;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import javax.faces.context.ExternalContext;
-
-import org.apache.myfaces.config.element.ManagedBean;
-import org.apache.myfaces.config.element.NavigationCase;
-import org.apache.myfaces.config.element.NavigationRule;
-import org.apache.myfaces.shared_impl.util.ClassUtils;
-
-public class FacesConfigValidator
-{
-
-    public static final String VALIDATE_CONTEXT_PARAM = "org.apache.myfaces.validate";
-    
-    private FacesConfigValidator(){
-        // hidden 
-    }
-
-    public static List<String> validate(ExternalContext ctx, String ctxPath){
-        
-        RuntimeConfig runtimeConfig = RuntimeConfig.getCurrentInstance(ctx);
-        
-        Map managedBeansMap = runtimeConfig.getManagedBeans();
-        
-        Iterator managedBeans = managedBeansMap == null ? null : 
-                                managedBeansMap.values() == null ? null :
-                                    managedBeansMap.values().iterator();
-        
-        Iterator<NavigationRule> navRules = runtimeConfig.getNavigationRules() == null ? 
-                            null : runtimeConfig.getNavigationRules().iterator();
-        
-        return validate(managedBeans, navRules, ctxPath);
-        
-    }
-    
-    public static List<String> validate(Iterator managedBeans, Iterator<NavigationRule> navRules, String ctxPath){
-        
-        List<String> list = new ArrayList<String>();
-        
-        if(navRules != null)
-            validateNavRules(navRules, list, ctxPath);
-        
-        if(managedBeans != null)
-            validateManagedBeans(managedBeans, list);
-        
-        return list;
-    }
-
-    private static void validateNavRules(Iterator<NavigationRule> navRules, List<String> list, String ctxPath){
-        
-        while(navRules.hasNext()){
-            
-            NavigationRule navRule = navRules.next();
-            
-            validateNavRule(navRule, list, ctxPath);
-            
-        }
-        
-    }
-    
-    private static void validateNavRule(NavigationRule navRule, List<String> list, String ctxPath){
-        
-        String fromId = navRule.getFromViewId();
-        String filePath = ctxPath + fromId;
-        
-        if(fromId != null && ! "*".equals(fromId) && ! new File(filePath).exists())
-            list.add("File for navigation 'from id' does not exist " + filePath);
-        
-        Collection cases = navRule.getNavigationCases();
-        
-        Iterator iterator = cases.iterator();
-        
-        while(iterator.hasNext()){
-            
-            NavigationCase caze = (NavigationCase) iterator.next();
-            
-            String toViewPath = ctxPath + caze.getToViewId();
-            
-            if(! new File(toViewPath).exists())
-                list.add("File for navigation 'to id' does not exist " + toViewPath);
-            
-        }
-        
-    }
-    
-    private static void validateManagedBeans(Iterator managedBeans, List<String> list){
-        
-        while(managedBeans.hasNext()){
-            
-            ManagedBean managedBean = (ManagedBean) managedBeans.next();
-            
-            validateManagedBean(managedBean, list);
-            
-        }
-        
-    }
-
-    private static void validateManagedBean(ManagedBean managedBean, List<String> list){
-        
-        String className = managedBean.getManagedBeanClassName();
-        
-        try
-        {
-            ClassUtils.classForName(className);
-        }
-        catch (ClassNotFoundException e)
-        { 
-            
-            String msg = "Could not locate class " 
-                + className + " for managed bean '" + managedBean.getManagedBeanName() + "'";
-            
-            list.add(msg);
-            
-        }
-
-    }
-
+/*
+ * Copyright 2004-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+package org.apache.myfaces.config;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import javax.faces.context.ExternalContext;
+
+import org.apache.myfaces.config.element.ManagedBean;
+import org.apache.myfaces.config.element.NavigationCase;
+import org.apache.myfaces.config.element.NavigationRule;
+import org.apache.myfaces.shared_impl.util.ClassUtils;
+
+public class FacesConfigValidator
+{
+
+    public static final String VALIDATE_CONTEXT_PARAM = "org.apache.myfaces.validate";
+    
+    private FacesConfigValidator(){
+        // hidden 
+    }
+
+    public static List<String> validate(ExternalContext ctx, String ctxPath){
+        
+        RuntimeConfig runtimeConfig = RuntimeConfig.getCurrentInstance(ctx);
+        
+        Map managedBeansMap = runtimeConfig.getManagedBeans();
+        
+        Iterator managedBeans = managedBeansMap == null ? null : 
+                                managedBeansMap.values() == null ? null :
+                                    managedBeansMap.values().iterator();
+        
+        Iterator<NavigationRule> navRules = runtimeConfig.getNavigationRules() == null ? 
+                            null : runtimeConfig.getNavigationRules().iterator();
+        
+        return validate(managedBeans, navRules, ctxPath);
+        
+    }
+    
+    public static List<String> validate(Iterator managedBeans, Iterator<NavigationRule> navRules, String ctxPath){
+        
+        List<String> list = new ArrayList<String>();
+        
+        if(navRules != null)
+            validateNavRules(navRules, list, ctxPath);
+        
+        if(managedBeans != null)
+            validateManagedBeans(managedBeans, list);
+        
+        return list;
+    }
+
+    private static void validateNavRules(Iterator<NavigationRule> navRules, List<String> list, String ctxPath){
+        
+        while(navRules.hasNext()){
+            
+            NavigationRule navRule = navRules.next();
+            
+            validateNavRule(navRule, list, ctxPath);
+            
+        }
+        
+    }
+    
+    private static void validateNavRule(NavigationRule navRule, List<String> list, String ctxPath){
+        
+        String fromId = navRule.getFromViewId();
+        String filePath = ctxPath + fromId;
+        
+        if(fromId != null && ! "*".equals(fromId) && ! new File(filePath).exists())
+            list.add("File for navigation 'from id' does not exist " + filePath);
+        
+        Collection cases = navRule.getNavigationCases();
+        
+        Iterator iterator = cases.iterator();
+        
+        while(iterator.hasNext()){
+            
+            NavigationCase caze = (NavigationCase) iterator.next();
+            
+            String toViewPath = ctxPath + caze.getToViewId();
+            
+            if(! new File(toViewPath).exists())
+                list.add("File for navigation 'to id' does not exist " + toViewPath);
+            
+        }
+        
+    }
+    
+    private static void validateManagedBeans(Iterator managedBeans, List<String> list){
+        
+        while(managedBeans.hasNext()){
+            
+            ManagedBean managedBean = (ManagedBean) managedBeans.next();
+            
+            validateManagedBean(managedBean, list);
+            
+        }
+        
+    }
+
+    private static void validateManagedBean(ManagedBean managedBean, List<String> list){
+        
+        String className = managedBean.getManagedBeanClassName();
+        
+        try
+        {
+            ClassUtils.classForName(className);
+        }
+        catch (ClassNotFoundException e)
+        { 
+            
+            String msg = "Could not locate class " 
+                + className + " for managed bean '" + managedBean.getManagedBeanName() + "'";
+            
+            list.add(msg);
+            
+        }
+
+    }
+
 }

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/FacesConfigValidator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/LastVariableResolverInChain.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/LastVariableResolverInChain.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/LastVariableResolverInChain.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/LastVariableResolverInChain.java Fri Mar 16 06:24:10 2007
@@ -1,44 +1,44 @@
-/*
- * Copyright 2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.myfaces.config;
-
-import javax.faces.el.VariableResolver;
-import javax.faces.el.EvaluationException;
-import javax.faces.context.FacesContext;
-
-/**
- * Represents the last Variable resolver in the chain - is added to be able to
- * through an Evaluation Exception, even if any third-party Variable Resolver is
- * added to the mix.
- *
- * @author Martin Marinschek (latest modification by $Author: dennisbyrne $)
- * @version $Revision: 375880 $ $Date: 2006-02-08 08:27:18 +0100 (Mi, 08 Feb 2006) $
- */
-public class LastVariableResolverInChain extends VariableResolver
-{
-    private VariableResolver delegate;
-
-    public LastVariableResolverInChain(VariableResolver variableResolver)
-    {
-        delegate = variableResolver;
-    }
-
-    // METHODS
-    public Object resolveVariable(FacesContext facesContext, String name) throws EvaluationException
-    {
-        return delegate.resolveVariable(facesContext, name);
-    }
-}
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.config;
+
+import javax.faces.el.VariableResolver;
+import javax.faces.el.EvaluationException;
+import javax.faces.context.FacesContext;
+
+/**
+ * Represents the last Variable resolver in the chain - is added to be able to
+ * through an Evaluation Exception, even if any third-party Variable Resolver is
+ * added to the mix.
+ *
+ * @author Martin Marinschek (latest modification by $Author: dennisbyrne $)
+ * @version $Revision: 375880 $ $Date: 2006-02-08 08:27:18 +0100 (Mi, 08 Feb 2006) $
+ */
+public class LastVariableResolverInChain extends VariableResolver
+{
+    private VariableResolver delegate;
+
+    public LastVariableResolverInChain(VariableResolver variableResolver)
+    {
+        delegate = variableResolver;
+    }
+
+    // METHODS
+    public Object resolveVariable(FacesContext facesContext, String name) throws EvaluationException
+    {
+        return delegate.resolveVariable(facesContext, name);
+    }
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/LastVariableResolverInChain.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AllAnnotationLifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotatedManagedBeanHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotatedManagedBeanHandler.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotatedManagedBeanHandler.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotatedManagedBeanHandler.java Fri Mar 16 06:24:10 2007
@@ -1,158 +1,158 @@
-package org.apache.myfaces.config.annotation;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import javax.faces.FacesException;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.myfaces.config.ManagedBeanBuilder;
-
-/**
- * @see JSF spec 1.2, section 5.4
- * @author Dennis Byrne
- */
-
-public class AnnotatedManagedBeanHandler {
-
-	private static Log log = LogFactory.getLog(AnnotatedManagedBeanHandler.class);
-
-	private Object managedBean;
-
-	private String scope;
-	
-	private String name;
-	
-	private static final String POST_CONSTRUCT = "javax.annotation.PostConstruct";
-	
-	private static final String PRE_DESTROY = "javax.annotation.PreDestroy";
-
-	public AnnotatedManagedBeanHandler(Object managedBean, String scope, String name) {
-
-		if (managedBean == null) {
-			throw new NullPointerException("Object managedBean");
-		}
-
-		if (scope == null) {
-			throw new NullPointerException("scope");
-		}
-
-		if(name == null)
-			if(log.isWarnEnabled())
-				log.warn("managed bean " + managedBean.getClass() + "in " + scope + " scope has no name ");
-		
-		this.managedBean = managedBean;
-		this.scope = scope;
-		this.name = name;
-	}
-
-	public boolean invokePreDestroy() {
-		return invoke(PRE_DESTROY);
-	}
-
-	public boolean invokePostConstruct() {
-		return invoke(POST_CONSTRUCT);
-	}
-	
-	private boolean invoke(String annotationName) {
-
-		boolean threwUnchecked = false;
-
-		if (ManagedBeanBuilder.NONE.equals(scope)) {
-			if(log.isDebugEnabled())
-				log.debug( annotationName + " not processed for managed bean " + name 
-						+ " because it is not in request, session, or "
-						+ "application scope.  See section 5.4 of the JSF 1.3 spec"); 
-		} else {
-			threwUnchecked = invoke(managedBean.getClass().getMethods(), annotationName);
-		}
-
-		return threwUnchecked;
-	}
-
-	private boolean invoke(Method[] methods, String annotationName) {
-
-		boolean threwUnchecked = false;
-
-		for (Method method : methods)
-			if (invoke(method, annotationName)) {
-				threwUnchecked = true;
-				break;
-			}// break if we invoke method ? or invoke all w/ annoation?
-
-		return threwUnchecked;
-	}
-
-	private boolean invoke(Method method, String annotationName) {
-
-		Annotation[] annotations = method.getAnnotations();
-		boolean threwUnchecked = false;
-
-		for (Annotation annotation : annotations) 
-		{
-			if (isMatch(annotation, annotationName)) 
-			{
-				if (invoke(annotation, method)) 
-				{
-					threwUnchecked = true;
-					break; // spec says not to call any more methods on this
-				}
-			}
-		}
-
-		return threwUnchecked;
-	}
-
-	private boolean invoke(Annotation annotation, Method method) {
-
-		boolean threwUnchecked = true; // start w/ pessimism
-
-		try {
-
-			method.invoke(managedBean, null); // what do we do for parameters?
-
-			threwUnchecked = false;
-
-		} catch (InvocationTargetException ite) { // catch most specific first
-
-			final Throwable cause = ite.getCause();
-
-			handleException(method, cause == null ? ite : cause);
-
-		} catch (Exception e) {
-
-			handleException(method, e);
-		}
-
-		return threwUnchecked;
-	}
-
-	private void handleException(Method method, Throwable e) {
-		final String genericLoggingMessage = getGenericLoggingMessage(method, e);
-
-		if (e instanceof RuntimeException) // why did they make RE extend E ?
-		{
-			log.error(genericLoggingMessage + " MyFaces cannot " + " put the bean in "
-					+ scope + " scope " + " ... execution continues. ");
-		} else {
-			throw new FacesException(genericLoggingMessage + " The spec is ambivalent on checked exceptions.");
-		}
-	}
-
-	private String getGenericLoggingMessage(Method method, Throwable e) {
-		return "When invoking " + method.getName() + " on a managed bean '" + name
-				+ "'," + " an exception " + e.getClass() + "{" + e.getMessage() + "} was thrown. "
-				+ " See section 5.4.1 of the JSF specification.";
-	}
-
-	private boolean isMatch(Annotation annotation, String annotationName) {
-
-		final Class<? extends Annotation> annotationType = annotation.annotationType();
-		final String name = annotationType.getName();
-		// use the literal String because we want to avoid ClassDefNotFoundError
-		return annotationName.equals(name);
-
-	}
-}
+package org.apache.myfaces.config.annotation;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import javax.faces.FacesException;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.config.ManagedBeanBuilder;
+
+/**
+ * @see JSF spec 1.2, section 5.4
+ * @author Dennis Byrne
+ */
+
+public class AnnotatedManagedBeanHandler {
+
+	private static Log log = LogFactory.getLog(AnnotatedManagedBeanHandler.class);
+
+	private Object managedBean;
+
+	private String scope;
+	
+	private String name;
+	
+	private static final String POST_CONSTRUCT = "javax.annotation.PostConstruct";
+	
+	private static final String PRE_DESTROY = "javax.annotation.PreDestroy";
+
+	public AnnotatedManagedBeanHandler(Object managedBean, String scope, String name) {
+
+		if (managedBean == null) {
+			throw new NullPointerException("Object managedBean");
+		}
+
+		if (scope == null) {
+			throw new NullPointerException("scope");
+		}
+
+		if(name == null)
+			if(log.isWarnEnabled())
+				log.warn("managed bean " + managedBean.getClass() + "in " + scope + " scope has no name ");
+		
+		this.managedBean = managedBean;
+		this.scope = scope;
+		this.name = name;
+	}
+
+	public boolean invokePreDestroy() {
+		return invoke(PRE_DESTROY);
+	}
+
+	public boolean invokePostConstruct() {
+		return invoke(POST_CONSTRUCT);
+	}
+	
+	private boolean invoke(String annotationName) {
+
+		boolean threwUnchecked = false;
+
+		if (ManagedBeanBuilder.NONE.equals(scope)) {
+			if(log.isDebugEnabled())
+				log.debug( annotationName + " not processed for managed bean " + name 
+						+ " because it is not in request, session, or "
+						+ "application scope.  See section 5.4 of the JSF 1.3 spec"); 
+		} else {
+			threwUnchecked = invoke(managedBean.getClass().getMethods(), annotationName);
+		}
+
+		return threwUnchecked;
+	}
+
+	private boolean invoke(Method[] methods, String annotationName) {
+
+		boolean threwUnchecked = false;
+
+		for (Method method : methods)
+			if (invoke(method, annotationName)) {
+				threwUnchecked = true;
+				break;
+			}// break if we invoke method ? or invoke all w/ annoation?
+
+		return threwUnchecked;
+	}
+
+	private boolean invoke(Method method, String annotationName) {
+
+		Annotation[] annotations = method.getAnnotations();
+		boolean threwUnchecked = false;
+
+		for (Annotation annotation : annotations) 
+		{
+			if (isMatch(annotation, annotationName)) 
+			{
+				if (invoke(annotation, method)) 
+				{
+					threwUnchecked = true;
+					break; // spec says not to call any more methods on this
+				}
+			}
+		}
+
+		return threwUnchecked;
+	}
+
+	private boolean invoke(Annotation annotation, Method method) {
+
+		boolean threwUnchecked = true; // start w/ pessimism
+
+		try {
+
+			method.invoke(managedBean, null); // what do we do for parameters?
+
+			threwUnchecked = false;
+
+		} catch (InvocationTargetException ite) { // catch most specific first
+
+			final Throwable cause = ite.getCause();
+
+			handleException(method, cause == null ? ite : cause);
+
+		} catch (Exception e) {
+
+			handleException(method, e);
+		}
+
+		return threwUnchecked;
+	}
+
+	private void handleException(Method method, Throwable e) {
+		final String genericLoggingMessage = getGenericLoggingMessage(method, e);
+
+		if (e instanceof RuntimeException) // why did they make RE extend E ?
+		{
+			log.error(genericLoggingMessage + " MyFaces cannot " + " put the bean in "
+					+ scope + " scope " + " ... execution continues. ");
+		} else {
+			throw new FacesException(genericLoggingMessage + " The spec is ambivalent on checked exceptions.");
+		}
+	}
+
+	private String getGenericLoggingMessage(Method method, Throwable e) {
+		return "When invoking " + method.getName() + " on a managed bean '" + name
+				+ "'," + " an exception " + e.getClass() + "{" + e.getMessage() + "} was thrown. "
+				+ " See section 5.4.1 of the JSF specification.";
+	}
+
+	private boolean isMatch(Annotation annotation, String annotationName) {
+
+		final Class<? extends Annotation> annotationType = annotation.annotationType();
+		final String name = annotationType.getName();
+		// use the literal String because we want to avoid ClassDefNotFoundError
+		return annotationName.equals(name);
+
+	}
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotatedManagedBeanHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/DefaultLifecycleProviderFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/DiscoverableLifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/LifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/LifecycleProviderFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/NoAnnotationLifecyleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/NoInjectionAnnotationLifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/ResourceAnnotationLifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/config/annotation/TomcatAnnotationLifecycleProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullPropertyResolver.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullPropertyResolver.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullPropertyResolver.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullPropertyResolver.java Fri Mar 16 06:24:10 2007
@@ -1,78 +1,78 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.myfaces.el;
-
-import javax.el.ELContext;
-import javax.faces.context.FacesContext;
-import javax.faces.el.EvaluationException;
-import javax.faces.el.PropertyNotFoundException;
-import javax.faces.el.PropertyResolver;
-
-/**
- * Default PropertyResolver.  See JSF 1.2 spec section 5.8.2
- *
- * @author Stan Silvert
- */
-public class NullPropertyResolver extends PropertyResolver {
-    
-    /** Creates a new instance of NullPropertyResolver */
-    public NullPropertyResolver() {
-    }
-
-    public boolean isReadOnly(Object base, int index) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return false;
-    }
-    
-    public boolean isReadOnly(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return false;
-    }
-
-    public Object getValue(Object base, int index) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return null;
-    }
-    
-    public Object getValue(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return null;
-    }
-
-    public Class getType(Object base, int index) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return null;
-    }
-    
-     public Class getType(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-        return null;
-    }
-
-    public void setValue(Object base, Object property, Object value) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-    }
-
-    public void setValue(Object base, int index, Object value) throws EvaluationException, PropertyNotFoundException {
-        elContext().setPropertyResolved(false);
-    }
-
-    private ELContext elContext() {
-        return FacesContext.getCurrentInstance().getELContext();
-    }
-    
-}
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.myfaces.el;
+
+import javax.el.ELContext;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.PropertyNotFoundException;
+import javax.faces.el.PropertyResolver;
+
+/**
+ * Default PropertyResolver.  See JSF 1.2 spec section 5.8.2
+ *
+ * @author Stan Silvert
+ */
+public class NullPropertyResolver extends PropertyResolver {
+    
+    /** Creates a new instance of NullPropertyResolver */
+    public NullPropertyResolver() {
+    }
+
+    public boolean isReadOnly(Object base, int index) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return false;
+    }
+    
+    public boolean isReadOnly(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return false;
+    }
+
+    public Object getValue(Object base, int index) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return null;
+    }
+    
+    public Object getValue(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return null;
+    }
+
+    public Class getType(Object base, int index) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return null;
+    }
+    
+     public Class getType(Object base, Object property) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+        return null;
+    }
+
+    public void setValue(Object base, Object property, Object value) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+    }
+
+    public void setValue(Object base, int index, Object value) throws EvaluationException, PropertyNotFoundException {
+        elContext().setPropertyResolved(false);
+    }
+
+    private ELContext elContext() {
+        return FacesContext.getCurrentInstance().getELContext();
+    }
+    
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullPropertyResolver.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullVariableResolver.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullVariableResolver.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullVariableResolver.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullVariableResolver.java Fri Mar 16 06:24:10 2007
@@ -1,42 +1,42 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.myfaces.el;
-
-import javax.faces.context.FacesContext;
-import javax.faces.el.EvaluationException;
-import javax.faces.el.VariableResolver;
-
-/**
- * This is the default VariableResolver.  See JSF 1.2 spec section 5.8.1
- *
- * @author Stan Silvert
- */
-public class NullVariableResolver extends VariableResolver {
-    
-    /** Creates a new instance of NullVariableResolver */
-    public NullVariableResolver() {
-    }
-
-    public Object resolveVariable(FacesContext facesContext, String name) 
-        throws EvaluationException {
-        
-        facesContext.getELContext().setPropertyResolved(false);
-        
-        return null;
-    }
-    
-}
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.myfaces.el;
+
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.VariableResolver;
+
+/**
+ * This is the default VariableResolver.  See JSF 1.2 spec section 5.8.1
+ *
+ * @author Stan Silvert
+ */
+public class NullVariableResolver extends VariableResolver {
+    
+    /** Creates a new instance of NullVariableResolver */
+    public NullVariableResolver() {
+    }
+
+    public Object resolveVariable(FacesContext facesContext, String name) 
+        throws EvaluationException {
+        
+        facesContext.getELContext().setPropertyResolved(false);
+        
+        return null;
+    }
+    
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/NullVariableResolver.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToPropertyResolver.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToPropertyResolver.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToPropertyResolver.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToPropertyResolver.java Fri Mar 16 06:24:10 2007
@@ -1,146 +1,146 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.myfaces.el.convert;
-
-import javax.el.ELContext;
-import javax.el.ELException;
-import javax.el.ELResolver;
-import javax.faces.context.FacesContext;
-import javax.faces.el.EvaluationException;
-import javax.faces.el.PropertyNotFoundException;
-import javax.faces.el.PropertyResolver;
-
-/**
- *
- * @author Stan Silvert
- */
-public class ELResolverToPropertyResolver extends PropertyResolver {
-    
-    private ELResolver elResolver;
-    
-    /**
-     * Creates a new instance of ELResolverToPropertyResolver
-     */
-    public ELResolverToPropertyResolver(ELResolver elResolver) {
-        this.elResolver = elResolver;
-    }
-
-    public boolean isReadOnly(Object base, int index) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.isReadOnly(elContext(), base, new Integer(index));
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-        
-    }
-    
-    public boolean isReadOnly(Object base, Object property) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.isReadOnly(elContext(), base, property);
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-        
-    }
-
-    public Object getValue(Object base, int index) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.getValue(elContext(), base, new Integer(index));
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-        
-    }
-
-    public Object getValue(Object base, Object property) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.getValue(elContext(), base, property);
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-    
-    public Class getType(Object base, int index) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.getType(elContext(), base, new Integer(index));
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-    
-    public Class getType(Object base, Object property) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            return elResolver.getType(elContext(), base, property);
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-
-    public void setValue(Object base, Object property, Object value) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            elResolver.setValue(elContext(), base, property, value);
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-
-    public void setValue(Object base, int index, Object value) 
-        throws EvaluationException, PropertyNotFoundException {
-        
-        try {
-            elResolver.setValue(elContext(), base, new Integer(index), value);
-        } catch (javax.el.PropertyNotFoundException e) {
-            throw new javax.faces.el.PropertyNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-        
-    }
-
-    private ELContext elContext() {
-        return FacesContext.getCurrentInstance().getELContext();
-    }
-    
-}
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.myfaces.el.convert;
+
+import javax.el.ELContext;
+import javax.el.ELException;
+import javax.el.ELResolver;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.PropertyNotFoundException;
+import javax.faces.el.PropertyResolver;
+
+/**
+ *
+ * @author Stan Silvert
+ */
+public class ELResolverToPropertyResolver extends PropertyResolver {
+    
+    private ELResolver elResolver;
+    
+    /**
+     * Creates a new instance of ELResolverToPropertyResolver
+     */
+    public ELResolverToPropertyResolver(ELResolver elResolver) {
+        this.elResolver = elResolver;
+    }
+
+    public boolean isReadOnly(Object base, int index) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.isReadOnly(elContext(), base, new Integer(index));
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+        
+    }
+    
+    public boolean isReadOnly(Object base, Object property) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.isReadOnly(elContext(), base, property);
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+        
+    }
+
+    public Object getValue(Object base, int index) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.getValue(elContext(), base, new Integer(index));
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+        
+    }
+
+    public Object getValue(Object base, Object property) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.getValue(elContext(), base, property);
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+    
+    public Class getType(Object base, int index) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.getType(elContext(), base, new Integer(index));
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+    
+    public Class getType(Object base, Object property) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            return elResolver.getType(elContext(), base, property);
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+
+    public void setValue(Object base, Object property, Object value) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            elResolver.setValue(elContext(), base, property, value);
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+
+    public void setValue(Object base, int index, Object value) 
+        throws EvaluationException, PropertyNotFoundException {
+        
+        try {
+            elResolver.setValue(elContext(), base, new Integer(index), value);
+        } catch (javax.el.PropertyNotFoundException e) {
+            throw new javax.faces.el.PropertyNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+        
+    }
+
+    private ELContext elContext() {
+        return FacesContext.getCurrentInstance().getELContext();
+    }
+    
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToPropertyResolver.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToVariableResolver.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToVariableResolver.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToVariableResolver.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToVariableResolver.java Fri Mar 16 06:24:10 2007
@@ -1,55 +1,55 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.myfaces.el.convert;
-
-import javax.el.ELException;
-import javax.el.ELResolver;
-import javax.el.PropertyNotFoundException;
-import javax.faces.context.FacesContext;
-import javax.faces.el.EvaluationException;
-import javax.faces.el.VariableResolver;
-
-/**
- * Provides ELResolver wrapper so that legacy apps which rely on a 
- * VariableResolver can still work.
- *
- * @author Stan Silvert
- */
-public class ELResolverToVariableResolver extends VariableResolver {
-    
-    private ELResolver elResolver;
-    
-    /**
-     * Creates a new instance of ELResolverToVariableResolver
-     */
-    public ELResolverToVariableResolver(ELResolver elResolver) {
-        if (elResolver == null) throw new NullPointerException();
-        this.elResolver = elResolver;
-    }
-
-    public Object resolveVariable(FacesContext facesContext, String name) throws EvaluationException {
-        
-        try {
-            return elResolver.getValue(facesContext.getELContext(), null, name);
-        } catch (PropertyNotFoundException e) {
-            throw new EvaluationException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-    
-}
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.myfaces.el.convert;
+
+import javax.el.ELException;
+import javax.el.ELResolver;
+import javax.el.PropertyNotFoundException;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.VariableResolver;
+
+/**
+ * Provides ELResolver wrapper so that legacy apps which rely on a 
+ * VariableResolver can still work.
+ *
+ * @author Stan Silvert
+ */
+public class ELResolverToVariableResolver extends VariableResolver {
+    
+    private ELResolver elResolver;
+    
+    /**
+     * Creates a new instance of ELResolverToVariableResolver
+     */
+    public ELResolverToVariableResolver(ELResolver elResolver) {
+        if (elResolver == null) throw new NullPointerException();
+        this.elResolver = elResolver;
+    }
+
+    public Object resolveVariable(FacesContext facesContext, String name) throws EvaluationException {
+        
+        try {
+            return elResolver.getValue(facesContext.getELContext(), null, name);
+        } catch (PropertyNotFoundException e) {
+            throw new EvaluationException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+    
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/ELResolverToVariableResolver.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/MethodExpressionToMethodBinding.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/MethodExpressionToMethodBinding.java?view=diff&rev=518967&r1=518966&r2=518967
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/MethodExpressionToMethodBinding.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/MethodExpressionToMethodBinding.java Fri Mar 16 06:24:10 2007
@@ -1,99 +1,99 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.myfaces.el.convert;
-
-import javax.el.ELException;
-import javax.el.MethodExpression;
-import javax.faces.component.StateHolder;
-import javax.faces.context.FacesContext;
-import javax.faces.el.EvaluationException;
-import javax.faces.el.MethodBinding;
-import javax.faces.el.MethodNotFoundException;
-
-/**
- * Converts a MethodExpression to a MethodBinding.  
- * See JSF 1.2 spec section 5.8.4
- *
- * ATTENTION: If you make changes to this class, treat 
- * javax.faces.component._MethodExpressionToMethodBinding
- * accordingly.
- *
- * @author Stan Silvert
- * @see javax.faces.component._MethodExpressionToMethodBinding
- */
-public class MethodExpressionToMethodBinding extends MethodBinding implements StateHolder {
-    
-    private MethodExpression methodExpression;
-    
-    private boolean isTransient = false;
-    
-    public MethodExpressionToMethodBinding() {
-        methodExpression = null;
-    }
-
-    /** Creates a new instance of MethodExpressionToMethodBinding */
-    public MethodExpressionToMethodBinding(MethodExpression methodExpression) {
-        this.methodExpression = methodExpression;
-    }
-    
-    @Override
-    public String getExpressionString()
-    {
-        return methodExpression.getExpressionString();
-    }
-
-    public Class getType(FacesContext facesContext) 
-        throws MethodNotFoundException {
-        
-        try {
-            return methodExpression.getMethodInfo(facesContext.getELContext()).getReturnType();
-        } catch (javax.el.MethodNotFoundException e) {
-            throw new javax.faces.el.MethodNotFoundException(e);
-        }
-    }
-
-    public Object invoke(FacesContext facesContext, Object[] params) 
-        throws EvaluationException, MethodNotFoundException {
-        
-        try {
-            return methodExpression.invoke(facesContext.getELContext(), params);
-        } catch (javax.el.MethodNotFoundException e) {
-            throw new javax.faces.el.MethodNotFoundException(e);
-        } catch (ELException e) {
-            throw new EvaluationException(e);
-        }
-    }
-
-// -------- StateHolder methods -------------------------------------------    
-    
-    public void restoreState(FacesContext context, Object state) {
-        methodExpression = (MethodExpression)state;
-    }
-
-    public Object saveState(FacesContext context) {
-        return methodExpression;
-    }
-
-    public void setTransient(boolean newTransientValue) {
-        isTransient = newTransientValue;
-    }
-
-    public boolean isTransient() {
-        return isTransient;
-    }
-    
-}
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.myfaces.el.convert;
+
+import javax.el.ELException;
+import javax.el.MethodExpression;
+import javax.faces.component.StateHolder;
+import javax.faces.context.FacesContext;
+import javax.faces.el.EvaluationException;
+import javax.faces.el.MethodBinding;
+import javax.faces.el.MethodNotFoundException;
+
+/**
+ * Converts a MethodExpression to a MethodBinding.  
+ * See JSF 1.2 spec section 5.8.4
+ *
+ * ATTENTION: If you make changes to this class, treat 
+ * javax.faces.component._MethodExpressionToMethodBinding
+ * accordingly.
+ *
+ * @author Stan Silvert
+ * @see javax.faces.component._MethodExpressionToMethodBinding
+ */
+public class MethodExpressionToMethodBinding extends MethodBinding implements StateHolder {
+    
+    private MethodExpression methodExpression;
+    
+    private boolean isTransient = false;
+    
+    public MethodExpressionToMethodBinding() {
+        methodExpression = null;
+    }
+
+    /** Creates a new instance of MethodExpressionToMethodBinding */
+    public MethodExpressionToMethodBinding(MethodExpression methodExpression) {
+        this.methodExpression = methodExpression;
+    }
+    
+    @Override
+    public String getExpressionString()
+    {
+        return methodExpression.getExpressionString();
+    }
+
+    public Class getType(FacesContext facesContext) 
+        throws MethodNotFoundException {
+        
+        try {
+            return methodExpression.getMethodInfo(facesContext.getELContext()).getReturnType();
+        } catch (javax.el.MethodNotFoundException e) {
+            throw new javax.faces.el.MethodNotFoundException(e);
+        }
+    }
+
+    public Object invoke(FacesContext facesContext, Object[] params) 
+        throws EvaluationException, MethodNotFoundException {
+        
+        try {
+            return methodExpression.invoke(facesContext.getELContext(), params);
+        } catch (javax.el.MethodNotFoundException e) {
+            throw new javax.faces.el.MethodNotFoundException(e);
+        } catch (ELException e) {
+            throw new EvaluationException(e);
+        }
+    }
+
+// -------- StateHolder methods -------------------------------------------    
+    
+    public void restoreState(FacesContext context, Object state) {
+        methodExpression = (MethodExpression)state;
+    }
+
+    public Object saveState(FacesContext context) {
+        return methodExpression;
+    }
+
+    public void setTransient(boolean newTransientValue) {
+        isTransient = newTransientValue;
+    }
+
+    public boolean isTransient() {
+        return isTransient;
+    }
+    
+}

Propchange: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/el/convert/MethodExpressionToMethodBinding.java
------------------------------------------------------------------------------
    svn:eol-style = native