You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2010/01/28 03:03:55 UTC

svn commit: r903939 [2/4] - in /myfaces/current20/test-webapp/webapp: ./ src/main/java/org/apache/myfaces/bindingCLV/ src/main/java/org/apache/myfaces/blank/ src/main/java/org/apache/myfaces/convertDateTime/ src/main/java/org/apache/myfaces/convertbig/...

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCity.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCity.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCity.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCity.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,88 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.examples.listexample;
+
+import java.io.Serializable;
+
+/**
+ * @author MBroekelmann
+ *
+ */
+public class SimpleCity implements Serializable
+{  
+    /**
+     * serial id for serialisation versioning
+     */
+    private static final long serialVersionUID = 1L;
+    private String mName;
+
+    private boolean selected;
+    
+	public boolean isSelected() {
+		return selected;
+	}
+
+	public void setSelected(boolean selected) {
+		this.selected = selected;
+	}
+	
+	public void unselect(){
+		setSelected(false);
+	}
+	
+
+	/**
+	 * 
+	 */
+	public SimpleCity(String name)
+	{
+		mName = name;
+	}
+
+	/**
+	 * 
+	 */
+	public SimpleCity()
+	{
+	}
+
+	/**
+	 * @return Returns the name.
+	 */
+	public String getName()
+	{
+		return mName;
+	}
+
+	/**
+	 * @param name The name to set.
+	 */
+	public void setName(String name)
+	{
+		mName = name;
+	}
+
+	/**
+	 * @see java.lang.Object#toString()
+	 */
+	public String toString()
+	{
+		return getName();
+	}
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountry.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountry.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountry.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountry.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,212 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.examples.listexample;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+import javax.faces.component.UIComponent;
+import javax.faces.component.UIData;
+import javax.faces.component.html.HtmlDataTable;
+import javax.faces.event.ActionEvent;
+
+/**
+ * DOCUMENT ME!
+ * @author Thomas Spiegl (latest modification by $Author: lu4242 $)
+ * @version $Revision: 692962 $ $Date: 2008-09-08 02:10:51 +0200 (Mo, 08 Sep 2008) $
+ */
+public class SimpleCountry implements Serializable
+{
+    /**
+     * serial id for serialisation versioning
+     */
+    private static final long serialVersionUID = 1L;
+    private long _id;
+	private String _name;
+	private String _isoCode;
+	private BigDecimal _size;
+	private boolean _remove = false;
+	private List _cities;
+	private String mSortCitiesColumn;
+	private boolean mIsSortCitiesAscending;
+	
+	public SimpleCountry(long id, String name, String isoCode, BigDecimal size, SimpleCity[] cities)
+	{
+		_id = id;
+		_name = name;
+		_isoCode = isoCode;
+		_size = size;
+
+		if (cities != null)
+			_cities = new ArrayList(Arrays.asList(cities));
+		else
+			_cities = new ArrayList();
+	}
+
+	public long getId()
+	{
+		return _id;
+	}
+
+	public String getName()
+	{
+		return _name;
+	}
+
+	public String getIsoCode()
+	{
+		return _isoCode;
+	}
+
+	public BigDecimal getSize()
+	{
+		return _size;
+	}
+
+	public List getCities()
+	{
+		if (mSortCitiesColumn != null)
+		{
+			Collections.sort(_cities, new Comparator()
+			{
+				public int compare(Object arg0, Object arg1)
+				{
+					SimpleCity lhs;
+					SimpleCity rhs;
+					if (isSortCitiesAscending())
+					{
+						lhs = (SimpleCity) arg0;
+						rhs = (SimpleCity) arg1;
+					}
+					else
+					{
+						rhs = (SimpleCity) arg0;
+						lhs = (SimpleCity) arg1;
+					}
+					String lhsName = lhs.getName();
+					String rhsName = rhs.getName();
+					if (lhsName != null)
+					{
+						if(rhsName != null)
+						{
+							return lhsName.compareToIgnoreCase(rhsName);
+						}
+						return -1;
+					}
+					else if (rhsName != null)
+					{
+						return 1;
+					}
+					return 0;
+				}
+			});
+		}
+		return _cities;
+	}
+
+	public void setId(long id)
+	{
+		_id = id;
+	}
+
+	public void setIsoCode(String isoCode)
+	{
+		_isoCode = isoCode;
+	}
+
+	public void setName(String name)
+	{
+		_name = name;
+	}
+
+	public void setSize(BigDecimal size)
+	{
+		_size = size;
+	}
+
+	public boolean isRemove()
+	{
+		return _remove;
+	}
+
+	public void setRemove(boolean remove)
+	{
+		_remove = remove;
+	}
+
+	public String addCity()
+	{
+		getCities().add(new SimpleCity());
+		return null;
+	}
+
+	public void deleteCity(ActionEvent ev)
+	{
+		UIData datatable = findParentHtmlDataTable(ev.getComponent());
+		getCities().remove(datatable.getRowIndex() + datatable.getFirst());
+	}
+
+	public void setSortCitiesColumn(String columnName)
+	{
+		mSortCitiesColumn = columnName;
+	}
+
+	/**
+	 * @return Returns the sortCitiesColumn.
+	 */
+	public String getSortCitiesColumn()
+	{
+		return mSortCitiesColumn;
+	}
+
+	public boolean isSortCitiesAscending()
+	{
+		return mIsSortCitiesAscending;
+	}
+
+	/**
+	 * @param isSortCitiesAscending The isSortCitiesAscending to set.
+	 */
+	public void setSortCitiesAscending(boolean isSortCitiesAscending)
+	{
+		mIsSortCitiesAscending = isSortCitiesAscending;
+	}
+
+	/**
+	 * @param component
+	 * @return
+	 */
+	private HtmlDataTable findParentHtmlDataTable(UIComponent component)
+	{
+		if (component == null)
+		{
+			return null;
+		}
+		if (component instanceof HtmlDataTable)
+		{
+			return (HtmlDataTable) component;
+		}
+		return findParentHtmlDataTable(component.getParent());
+	}
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountryList.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountryList.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountryList.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/examples/listexample/SimpleCountryList.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,184 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.examples.listexample;
+
+import javax.faces.component.html.HtmlDataTable;
+
+import javax.faces.event.ActionEvent;
+import javax.faces.component.UIComponent;
+import javax.faces.component.UIData;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.HashMap;
+
+/**
+ * DOCUMENT ME!
+ * @author Thomas Spiegl (latest modification by $Author: lu4242 $)
+ * @version $Revision: 692962 $ $Date: 2008-09-08 02:10:51 +0200 (Mo, 08 Sep 2008) $
+ */
+public class SimpleCountryList
+{
+    private List _countries = new ArrayList();
+    static
+    {
+    }
+
+    SimpleCountry getSimpleCountry(long id)
+    {
+        for (int i = 0; i < _countries.size(); i++)
+        {
+            SimpleCountry country = (SimpleCountry)_countries.get(i);
+            if (country.getId() == id)
+            {
+                return country;
+            }
+        }
+        return null;
+    }
+
+    long getNewSimpleCountryId()
+    {
+        long maxId = 0;
+        for (int i = 0; i < _countries.size(); i++)
+        {
+            SimpleCountry country = (SimpleCountry)_countries.get(i);
+            if (country.getId() > maxId)
+            {
+                maxId = country.getId();
+            }
+        }
+        return maxId + 1;
+    }
+
+    void saveSimpleCountry(SimpleCountry simpleCountry)
+    {
+        if (simpleCountry.getId() == 0)
+        {
+            simpleCountry.setId(getNewSimpleCountryId());
+        }
+        boolean found = false;
+        for (int i = 0; i < _countries.size(); i++)
+        {
+            SimpleCountry country = (SimpleCountry)_countries.get(i);
+            if (country.getId() == simpleCountry.getId())
+            {
+                _countries.set(i, simpleCountry);
+                found = true;
+            }
+        }
+        if (!found)
+        {
+            _countries.add(simpleCountry);
+        }
+    }
+
+    void deleteSimpleCountry(SimpleCountry simpleCountry)
+    {
+        for (int i = 0; i < _countries.size(); i++)
+        {
+            SimpleCountry country = (SimpleCountry)_countries.get(i);
+            if (country.getId() == simpleCountry.getId())
+            {
+                _countries.remove(i);
+            }
+        }
+    }
+
+    public SimpleCountryList()
+    {
+        _countries.add(new SimpleCountry(1, "AUSTRIA", "AT", new BigDecimal(123L), createCities(new String[]{"Wien","Graz","Linz","Salzburg"})));
+        _countries.add(new SimpleCountry(2, "AZERBAIJAN", "AZ", new BigDecimal(535L), createCities(new String[]{"Baku","Sumgait","Qabala","Agdam"})));
+        _countries.add(new SimpleCountry(3, "BAHAMAS", "BS", new BigDecimal(1345623L), createCities(new String[]{"Nassau","Alice Town","Church Grove","West End"})));
+        _countries.add(new SimpleCountry(4, "BAHRAIN", "BH", new BigDecimal(346L), createCities(new String[]{"Bahrain"})));
+        _countries.add(new SimpleCountry(5, "BANGLADESH", "BD", new BigDecimal(456L), createCities(new String[]{"Chittagong","Chandpur","Bogra","Feni"})));
+        _countries.add(new SimpleCountry(6, "BARBADOS", "BB", new BigDecimal(45645L), createCities(new String[]{"Grantley Adams"})));
+    }
+
+    /**
+	 * @param names
+	 * @return
+	 */
+	private SimpleCity[] createCities(String[] names)
+	{
+		SimpleCity[] result = new SimpleCity[names.length];
+		for (int i = 0; i < result.length; i++)
+		{
+			result[i] = new SimpleCity(names[i]);
+		}
+		return result;
+	}
+
+	public List getCountries()
+    {
+        return _countries;
+    }
+    
+    public Map getCountryMap()
+    {
+        Map map = new HashMap();
+
+        List li = getCountries();
+
+        for (int i = 0; i < li.size(); i++)
+        {
+            SimpleCountry simpleCountry = (SimpleCountry) li.get(i);
+            map.put(simpleCountry.getIsoCode(),simpleCountry.getName());
+        }
+
+        return map;
+    }
+    
+    public void setCountries(List countries)
+    {
+        _countries = countries;
+    }
+
+    public String addCountry()
+    {
+        List list = getCountries();
+        list.add(new SimpleCountry(list.size() + 1, "", "", new BigDecimal(0), createCities(new String[] {})));
+        return "ok";
+    }
+
+	public void deleteCountry(ActionEvent ev)
+	{
+		UIData datatable = findParentHtmlDataTable(ev.getComponent());
+		getCountries().remove(datatable.getRowIndex() + datatable.getFirst());
+	}
+
+	/**
+	 * @param component
+	 * @return
+	 */
+	private HtmlDataTable findParentHtmlDataTable(UIComponent component)
+	{
+		if (component == null)
+		{
+			return null;
+		}
+		if (component instanceof HtmlDataTable)
+		{
+			return (HtmlDataTable) component;
+		}
+		return findParentHtmlDataTable(component.getParent());
+	}
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/invoke/InvokeOnComponentBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/invoke/InvokeOnComponentBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/invoke/InvokeOnComponentBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/invoke/InvokeOnComponentBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,96 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.invoke;
+
+import javax.faces.component.ContextCallback;
+import javax.faces.component.UIComponent;
+import javax.faces.component.UIInput;
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+import javax.faces.event.ActionEvent;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.examples.listexample.SimpleCity;
+
+public class InvokeOnComponentBean {
+
+	public static Log log = LogFactory.getLog(InvokeOnComponentBean.class);
+	
+	private String clientId;
+	
+	private String currentValue;
+
+	public String getCurrentValue() {
+		return currentValue;
+	}
+
+	public void setCurrentValue(String currentValue) {
+		this.currentValue = currentValue;
+	}
+
+	public String getClientId() {
+		return clientId;
+	}
+
+	public void setClientId(String clientId) {
+		this.clientId = clientId;
+	}
+	
+	int countInvoke = 0;
+	
+	public void invokeSetValueOnComponent(ActionEvent evt) {
+	
+		ContextCallback contextCallback = new LoadInputValue(); 
+		
+		FacesContext faces = FacesContext.getCurrentInstance();
+		UIViewRoot root = faces.getViewRoot();
+
+		boolean found = root.invokeOnComponent(faces, clientId, contextCallback);
+
+		if (!found)
+			this.setCurrentValue(clientId + " not found!");
+		
+		countInvoke++;
+		System.out.println("COUNT:"+countInvoke);
+	}
+
+	
+	public class LoadInputValue implements ContextCallback{
+		
+		public void invokeContextCallback(FacesContext ctx, UIComponent c) {
+			
+			if (c instanceof UIInput){
+				UIInput input = (UIInput) c;
+				//System.out.println("The currentValue:"+input.getValue());
+				Object value = input.getValue();
+				c.getAttributes().put("style", "background:red"); 				
+				if (value instanceof SimpleCity){
+					currentValue = ((SimpleCity)value).toString();
+				}else{
+					currentValue = (String) input.getValue();
+				}
+			}else{
+				//System.out.println("nocurrentValue:");
+			}
+		}
+		
+	}
+
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/jstl/ListBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/jstl/ListBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/jstl/ListBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/jstl/ListBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,60 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.jstl;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+public class ListBean
+{
+    
+    Log log = LogFactory.getLog(ListBean.class);
+
+    public ListBean(){
+        
+    }
+    
+    public List getStringList(){
+        List list = new ArrayList();        
+        list.add("A");
+        list.add("B");
+        list.add("C");
+        list.add("D");
+        return list;
+    }
+    
+    public Iterator getStringIterator(){
+        return getStringList().iterator();
+    }
+    
+    public Collection getStringCollection(){
+        return (Collection) getStringList();
+    }
+    
+    public Object[] getStringArray(){
+        Object [] value = new Object [] {"A","B","C","D"}; 
+        return value;
+    }
+    
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/phaseuiroot/PhaseMethodsUIRootBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/phaseuiroot/PhaseMethodsUIRootBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/phaseuiroot/PhaseMethodsUIRootBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/phaseuiroot/PhaseMethodsUIRootBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,62 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.phaseuiroot;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseEvent;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+public class PhaseMethodsUIRootBean {
+
+	private int before = 0;
+	
+	private int after = 0;
+	
+	private String value = "";
+	
+	Log log = LogFactory.getLog(PhaseMethodsUIRootBean.class);
+	
+	public void beforePhase(PhaseEvent phaseEvent){
+	
+		FacesContext facesContext = FacesContext.getCurrentInstance();		
+		before++;		
+		facesContext.addMessage(null, new FacesMessage("This is the message for phase before "+phaseEvent.getPhaseId().toString()+" : "+before));
+		log.info("This is the message for phase before "+phaseEvent.getPhaseId().toString()+" : "+before);
+	}
+	
+	public void afterPhase(PhaseEvent phaseEvent){
+
+		FacesContext facesContext = FacesContext.getCurrentInstance();		
+		after++;		
+		facesContext.addMessage(null, new FacesMessage("This is the message for phase after "+phaseEvent.getPhaseId().toString()+" : "+after));
+		log.info("This is the message for phase after "+phaseEvent.getPhaseId().toString()+" : "+after);
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+		
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/postback/PostbackBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/postback/PostbackBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/postback/PostbackBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/postback/PostbackBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,33 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.postback;
+
+import javax.faces.context.FacesContext;
+
+public class PostbackBean
+{
+
+    public boolean isPostback()
+    {
+        FacesContext context = FacesContext.getCurrentInstance();
+        return context.getRenderKit().getResponseStateManager().isPostback(
+                context);
+    }
+
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/renderkit/CustomRenderKit.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/renderkit/CustomRenderKit.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/renderkit/CustomRenderKit.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/renderkit/CustomRenderKit.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,110 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.renderkit;
+
+import java.io.OutputStream;
+import java.io.Writer;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.faces.FactoryFinder;
+import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseStream;
+import javax.faces.context.ResponseWriter;
+import javax.faces.render.RenderKit;
+import javax.faces.render.RenderKitFactory;
+import javax.faces.render.Renderer;
+import javax.faces.render.ResponseStateManager;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.bindingCLV.BindingCLVBean;
+
+/**
+ * This RenderKit just delegate to HTML_BASIC renderkit, just
+ * for purpouse of test if the page is capable to find the 
+ * RenderKit.
+ * 
+ * @author Leonardo
+ *
+ */
+public class CustomRenderKit extends RenderKit
+{
+
+    private RenderKit _delegate;
+    
+    private Log log = LogFactory.getLog(CustomRenderKit.class);
+
+    public CustomRenderKit()
+    {
+        super();
+
+        RenderKitFactory factory = (RenderKitFactory) FactoryFinder
+                .getFactory(FactoryFinder.RENDER_KIT_FACTORY);
+        _delegate = factory.getRenderKit(FacesContext.getCurrentInstance(),
+                "HTML_BASIC");
+
+    }
+
+    private RenderKit getDelegateRenderKit()
+    {
+        if (_delegate == null)
+        {
+            RenderKitFactory factory = (RenderKitFactory) FactoryFinder
+                    .getFactory(FactoryFinder.RENDER_KIT_FACTORY);
+            _delegate = (RenderKit) factory.getRenderKit(FacesContext
+                    .getCurrentInstance(), "HTML_BASIC");
+        }
+        return _delegate;
+    }
+
+    @Override
+    public void addRenderer(String family, String rendererType, Renderer renderer)
+    {
+        getDelegateRenderKit().addRenderer(family, rendererType, renderer);
+    }
+
+    @Override
+    public ResponseStream createResponseStream(OutputStream out)
+    {
+        return getDelegateRenderKit().createResponseStream(out);
+    }
+
+    @Override
+    public ResponseWriter createResponseWriter(Writer writer, String contentTypeList,
+            String characterEncoding)
+    {
+        return getDelegateRenderKit().createResponseWriter(writer,
+                contentTypeList, characterEncoding);
+    }
+
+    @Override
+    public Renderer getRenderer(String family, String rendererType)
+    {
+        log.info("Getting Renderer as Delegate: "+family+" "+rendererType);
+        return getDelegateRenderKit().getRenderer(family, rendererType);
+    }
+
+    @Override
+    public ResponseStateManager getResponseStateManager()
+    {
+        return getDelegateRenderKit().getResponseStateManager();
+    }
+
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/runtimeex/HelloWorldThrowExBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/runtimeex/HelloWorldThrowExBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/runtimeex/HelloWorldThrowExBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/runtimeex/HelloWorldThrowExBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,79 @@
+/*
+ * 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.
+*/
+package org.apache.myfaces.runtimeex;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
+import javax.faces.event.AbortProcessingException;
+import javax.faces.event.ActionEvent;
+import javax.faces.model.SelectItem;
+import java.util.Arrays;
+import java.util.List;
+import java.util.ArrayList;
+
+/**
+ * A typical simple backing bean, that is backed to <code>helloworld.jsp</code>
+ * 
+ */
+public class HelloWorldThrowExBean {
+
+    private static Log log = LogFactory.getLog(HelloWorldThrowExBean.class);
+    //properties
+    private String greeting;
+    /**
+     * default empty constructor
+     */
+    public HelloWorldThrowExBean(){
+        greeting = "Hello";
+    }
+
+    //-------------------getter & setter
+    public String getGreeting()
+    {
+        return greeting;
+    }
+
+    public void setGreeting(String greeting)
+    {
+        this.greeting = greeting;
+    }
+
+    /**
+     * Method that is backed to a submit button of a form.
+     */
+    public String send(){
+        //do real logic
+        return ("success");
+    }
+
+    public void updateGreeting(ActionEvent evt)
+    {
+        Thread.dumpStack();
+        throw new AbortProcessingException("aborted!");
+    }
+    
+    public void updateGreetingRE(ActionEvent evt)
+    {
+        Thread.dumpStack();
+        throw new RuntimeException("aborted!");
+    }    
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,131 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.selectItem;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UISelectOne;
+import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseEvent;
+import javax.faces.event.PhaseId;
+import javax.faces.event.ValueChangeEvent;
+import javax.faces.model.SelectItem;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+public class SelectItemBean
+{
+
+    private UISelectOne component;
+
+    private String value;
+
+    Log log = LogFactory.getLog(SelectItemBean.class);
+
+    public void afterPhase(PhaseEvent phaseEvent)
+    {
+        //if (phaseEvent.getPhaseId().equals(PhaseId.PROCESS_VALIDATIONS))
+        //{
+            FacesContext facesContext = FacesContext.getCurrentInstance();
+
+            facesContext.addMessage(null, new FacesMessage(
+                    "This is the message for phase after "
+                            + phaseEvent.getPhaseId().toString() + " " + this.getValue()));
+            log.info("This is the message for phase after "
+                    + phaseEvent.getPhaseId().toString() + " : " + " " + this.getValue());
+            
+            
+        //}
+
+    }
+    
+    public void beforePhase(PhaseEvent phaseEvent)
+    {
+        if (phaseEvent.getPhaseId().equals(PhaseId.PROCESS_VALIDATIONS))
+        {
+            FacesContext facesContext = FacesContext.getCurrentInstance();
+
+            if (component.getSubmittedValue() != null){
+                facesContext.addMessage(null, new FacesMessage(
+                        "This is the message for phase before "
+                            + phaseEvent.getPhaseId().toString() + " " +  component.getSubmittedValue().getClass().getName()+
+                            "["+component.getSubmittedValue()+"]"));
+                log.info("This is the message for phase before "
+                    + phaseEvent.getPhaseId().toString() + " : " + " " + component.getSubmittedValue().getClass().getName()+
+                    "["+component.getSubmittedValue()+"]");
+            }else{
+                facesContext.addMessage(null, new FacesMessage(
+                        "This is the message for phase before "
+                                + phaseEvent.getPhaseId().toString() + " " + component.getSubmittedValue()));
+                log.info("This is the message for phase before "
+                        + phaseEvent.getPhaseId().toString() + " : " + " " + component.getSubmittedValue());
+                
+            }
+            
+        }
+
+    }
+    
+
+    public List<SelectItem> getList()
+    {
+        List<SelectItem> lista = new ArrayList<SelectItem>();
+
+        SelectItem item = null;
+        //lista.add(new SelectItem(null,"NULL 1"));
+        //item = new SelectItem(null, "NULL 2");
+        //item.setValue(null);
+        //lista.add(item);
+        //lista.add(new SelectItem("", "EMPTY"));
+        lista.add(new SelectItem("1", "Value 1"));
+        lista.add(new SelectItem("2", "Value 2"));
+        return lista;
+    }
+
+    public String getValue()
+    {
+        return value;
+    }
+
+    public void setValue(String value)
+    {
+        System.out.println("SETTING VALUE TO:"+value);
+        this.value = value;
+    }
+
+    public UISelectOne getComponent()
+    {
+        return component;
+    }
+
+    public void setComponent(UISelectOne component)
+    {
+        this.component = component;
+    }
+
+    public void processValueChange(ValueChangeEvent ce){
+
+        System.out.println("VALUE CHANGE:["+value+"]");
+        
+    }
+    
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemEscapeBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemEscapeBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemEscapeBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/selectItem/SelectItemEscapeBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,185 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.selectItem;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.model.SelectItem;
+
+public class SelectItemEscapeBean
+{
+
+    private List<SelectItem> list1;
+    
+    private List<SelectItem> list2;
+    
+    private List<SelectItem> list3;
+    
+    private List<SelectItem> list4;
+    
+    private List<SelectItem> list5;
+    
+    private List<SelectItem> list6;
+    
+    private String value1;
+    
+    private String value2;
+   
+    private String value3;
+    
+    private List value4;
+    
+    private List value5;
+    
+    private List value6;
+    
+    public List<SelectItem> getList1()
+    {
+        if (list1 == null)
+        {
+            list1 = getList();
+        }
+        return list1;
+    }
+    
+    public List<SelectItem> getList2()
+    {
+        if (list2 == null)
+        {
+            list2 = getList();
+        }
+        return list2;
+    }
+    
+    public List<SelectItem> getList3()
+    {
+        if (list3 == null)
+        {
+            list3 = getList();
+        }
+        return list3;
+    }
+    
+    public List<SelectItem> getList4()
+    {
+        if (list4 == null)
+        {
+            list4 = getList();
+        }
+        return list4;
+    }
+
+    public List<SelectItem> getList5()
+    {
+        if (list5 == null)
+        {
+            list5 = getList();
+        }
+        return list5;
+    }
+    
+    public List<SelectItem> getList6()
+    {
+        if (list6 == null)
+        {
+            list6 = getList();
+        }
+        return list6;
+    }
+    
+    public List<SelectItem> getList()
+    {
+        List<SelectItem> resp = new ArrayList<SelectItem>();
+        
+        resp.add(new SelectItem("0","Option 0","No option",false,false));
+        resp.add(new SelectItem("1","<b>Option 1</b>","The simplest option",false,false));
+        resp.add(new SelectItem("2","<b>Option 2</b>","The medium option",false,true));
+        resp.add(new SelectItem("3","<b>Option 3</b>","The good option",true,false));
+        resp.add(new SelectItem("4","<b>Option 4</b>","The very good option",true,true));
+        
+        return resp;
+    }
+
+    public String getValue1()
+    {
+        return value1;
+    }
+
+    public void setValue1(String value1)
+    {
+        this.value1 = value1;
+    }
+
+    public String getValue2()
+    {
+        return value2;
+    }
+
+    public void setValue2(String value2)
+    {
+        this.value2 = value2;
+    }
+
+    public String getValue3()
+    {
+        return value3;
+    }
+
+    public void setValue3(String value3)
+    {
+        this.value3 = value3;
+    }
+
+    public List getValue4()
+    {
+        return value4;
+    }
+
+    public void setValue4(List value4)
+    {
+        this.value4 = value4;
+    }
+
+    public List getValue5()
+    {
+        return value5;
+    }
+
+    public void setValue5(List value5)
+    {
+        this.value5 = value5;
+    }
+
+    public List getValue6()
+    {
+        return value6;
+    }
+
+    public void setValue6(List value6)
+    {
+        this.value6 = value6;
+    }
+    
+    public String getSelectItem1()
+    {
+        return ""+new SelectItem("0","Option 0","No option").isEscape();
+    }
+
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/servlet/SourceCodeServlet.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/servlet/SourceCodeServlet.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/servlet/SourceCodeServlet.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/servlet/SourceCodeServlet.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,128 @@
+/*
+ * 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.
+ */
+ 
+package org.apache.myfaces.servlet;
+
+import javax.servlet.ServletException;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.BufferedInputStream;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+
+public class SourceCodeServlet extends HttpServlet 
+{
+    public void doGet(HttpServletRequest req, HttpServletResponse res)
+        throws IOException, ServletException
+    {
+        String webPage = req.getServletPath();
+        
+        // remove the '*.source' suffix that maps to this servlet
+        int chopPoint = webPage.lastIndexOf(".source");
+        
+        webPage = webPage.substring(0, chopPoint);
+
+        if(webPage.endsWith(".jsf"))
+        {
+            int jsfChopPoint = webPage.lastIndexOf(".jsf");
+
+            webPage = webPage.substring(0, jsfChopPoint);
+
+            webPage += ".xhtml"; // replace jsf with xhtml
+
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".jsp"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".jspx"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".xhtml"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else
+        {
+            int beginChopPoint = webPage.lastIndexOf("/");
+            int extensionChopPoint = webPage.lastIndexOf(".java");
+
+            webPage = webPage.substring(beginChopPoint+1,extensionChopPoint);
+
+            try
+            {
+
+                // get the actual file location of the requested resource; try it in classes first
+                String realPath = getServletConfig().getServletContext().getRealPath("/WEB-INF/classes/"+webPage.replace('.','/')+".java");
+
+                outputFile(res, realPath);
+            }
+            catch(Exception e)
+            {
+                //classes hasn't worked. How about src?
+                String realPath = getServletConfig().getServletContext().getRealPath("/WEB-INF/src/"+webPage.replace('.','/')+".java");
+
+                outputFile(res, realPath);
+            }
+            
+        }
+    }
+
+    private void outputFile(HttpServletResponse res, String realPath)
+            throws IOException
+    {
+        // output an HTML page
+        res.setContentType("text/plain");
+
+        // print some html
+        ServletOutputStream out = res.getOutputStream();
+
+        // print the file
+        InputStream in = null;
+        try
+        {
+            in = new BufferedInputStream(new FileInputStream(realPath));
+            int ch;
+            while ((ch = in.read()) !=-1)
+            {
+                out.print((char)ch);
+            }
+        }
+        finally {
+            if (in != null) in.close();  // very important
+        }
+    }
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/setprop/SetPropertyBean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/setprop/SetPropertyBean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/setprop/SetPropertyBean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/setprop/SetPropertyBean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,101 @@
+/*
+ * 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.
+ */
+package org.apache.myfaces.setprop;
+
+import java.math.BigInteger;
+
+public class SetPropertyBean
+{
+    private int intValue = 0;
+    
+    private long longValue = 0l;
+    
+    private String stringValue = "HELLO";
+    
+    private double doubleValue = 0d;
+    
+    private float floatValue = 0f;
+    
+    private BigInteger bigIntegerValue = new BigInteger("0");
+
+    public int getIntValue()
+    {
+        return intValue;
+    }
+
+    public void setIntValue(int intValue)
+    {
+        this.intValue = intValue;
+    }
+
+    public long getLongValue()
+    {
+        return longValue;
+    }
+
+    public void setLongValue(long longValue)
+    {
+        this.longValue = longValue;
+    }
+
+    public String getStringValue()
+    {
+        return stringValue;
+    }
+
+    public void setStringValue(String stringValue)
+    {
+        this.stringValue = stringValue;
+    }
+
+    public double getDoubleValue()
+    {
+        return doubleValue;
+    }
+
+    public void setDoubleValue(double doubleValue)
+    {
+        this.doubleValue = doubleValue;
+    }
+
+    public float getFloatValue()
+    {
+        return floatValue;
+    }
+
+    public void setFloatValue(float floatValue)
+    {
+        this.floatValue = floatValue;
+    }
+
+    public BigInteger getBigIntegerValue()
+    {
+        return bigIntegerValue;
+    }
+
+    public void setBigIntegerValue(BigInteger bigIntegerValue)
+    {
+        this.bigIntegerValue = bigIntegerValue;
+    }
+    
+    
+    
+        
+
+}

Added: myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/test/Bean.java
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/test/Bean.java?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/test/Bean.java (added)
+++ myfaces/current20/test-webapp/webapp/src/main/java/org/apache/myfaces/test/Bean.java Thu Jan 28 02:03:43 2010
@@ -0,0 +1,41 @@
+package org.apache.myfaces.test;
+
+public class Bean {
+
+	private String valuetest = "HOLA MUNDO";
+
+	public String getValuetest() {
+		return valuetest;
+	}
+
+	public void setValuetest(String valuetest) {
+		this.valuetest = valuetest;
+	}
+	
+	public String valueempty = "";
+	
+	public String valuenull = null;
+
+    public String getValueempty()
+    {
+        return valueempty;
+    }
+
+    public void setValueempty(String valueempty)
+    {
+        this.valueempty = valueempty;
+    }
+
+    public String getValuenull()
+    {
+        return valuenull;
+    }
+
+    public void setValuenull(String valuenull)
+    {
+        this.valuenull = valuenull;
+    }
+	
+	
+	
+}

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/build.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/build.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/build.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/build.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,4 @@
+# Do not edit this file, as it will be completed automatically
+# by maven during the build process
+tomahawk_version=${pom.version}
+jsf_implementation=${jsf_implementation}

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,196 @@
+welcome = Welcome to
+today = Today's date is {0,date,short}.
+
+
+nav_Home            = Home
+nav_Examples        = Examples
+nav_Sample_1        = Sample 1
+nav_Sample_2        = Sample 2
+nav_aliasBean       = Alias Bean
+nav_buffer          = Buffer
+nav_dataTable       = Master/Detail Example
+nav_sortTable       = Sortable Table
+nav_Documentation   = Documentation
+nav_Features        = Features
+nav_Info            = Info
+nav_Contact         = Contact
+nav_Copyright       = Copyright
+nav_Options         = Options
+nav_Components      = Components
+nav_Selectbox       = Selectboxes
+nav_FileUpload      = File upload
+nav_TabbedPane      = Tabbed Pane
+nav_Calendar        = Calendar
+nav_Popup           = Popup
+nav_JsListener      = JavaScript Listener
+nav_dataList        = Dynamic Lists
+nav_tree            = Tree
+nav_tree2           = Tree2
+nav_treeTable       = Tree Table
+nav_Validate		= Validations
+nav_rssTicker		= RssTicker
+nav_dataScroller    = DataScroller
+nav_Date			= Date
+nav_panelstack      = Panel Stack
+nav_css             = Stylesheet
+nav_newspaperTable  = Newspaper Table
+nav_InputHtml		= Html Editor
+nav_InputTextHelp	= Input Text Help
+nav_forceId         = ForceId
+nav_selectOneCountry= Select a country box
+nav_panelnavigation = PanelNavigation Menu
+
+nav_swapimage       = SwapImage
+nav_crossDataTable  = Crosstable
+
+# buttons
+
+button_save = Save
+button_apply = Apply
+button_cancel = Cancel
+button_delete = Delete
+button_submit = Submit
+
+alt_logo = MyFaces - the open source JSF implementation
+
+option_lang = View this page in
+option_layout = Layout
+
+empty_selitem = Please select ...
+
+# sample1
+
+sample1_form = A Form
+sample1_another_form = Another Form
+sample1_validation = Validation
+sample1_number = Number
+sample1_add = Add them
+sample1_sub = Subtract them
+sample1_add_link = Add them by clicking this link
+sample1_sub_link = Subtract them by clicking this link
+sample1_result = Result
+sample1_text = Text
+sample1_uppercase = Make it uppercase
+sample1_lowercase = Make it lowercase
+sample1_disable_validation = Disable validation
+sample1_enable_validation = Enable validation
+
+# sample2
+
+sample2_add_quote = Add quotes
+sample2_remove_quote = Remove quotes
+sample2_select_quote = select a quote character
+sample2_select_unquote = select an unquote character
+
+# components examples
+
+label_cars = Model
+label_colors = Colors
+label_color = Color
+label_extras = Extras
+button_calcprice = Calculate price
+msg_price = {0,choice,0#Configure your fondest wish!|1< Your price: \u20ac {0}}
+color_black = black
+color_blue = blue
+color_marine = marine blue
+color_red = red
+label_interior_color = Interior Color
+extra_aircond = Aircondition
+extra_sideab = Sideairbag
+extra_mirrowheat = Heated Mirrors
+extra_leaderseat = Leatherseats
+discount_0 = I want no rebate
+discount_1 = I want an aggregated rebate
+discount_2 = I want a corporate client rebate
+discount_2_0 = BeachBoys are great
+discount_2_1 = Red Hot Chillis are better
+discount_2_2 = My favourite Band
+radio_hint = This Radio is a myfaces extension - you can use html code here!
+sort_cartype = Car type
+sort_carcolor = Car color
+sales_tax = Sales Tax
+doors=Doors
+
+validate_email = Email
+validate_credit = Credit Card
+validate_url = Url
+validate_regexp = Regular Expression
+validate_equal = Equal
+validate_compare_to = Compare To
+
+label_country_name = Country
+label_country_iso = Iso-Code
+label_country_cities = Cities
+new_country = Add New Country \uffbb
+country_edit_table = Edit all Countries \uffbb
+label_country_city_add = Add new City
+label_country_city_delete = delete
+label_city = City
+
+dataList_simple = Simple list
+dataList_ul = Unordered list
+dataList_ol = Ordered list
+
+dataScroller_pages = {0} Cars found, displaying {1} cars, from {2} to {3}. Page {4} / {5}
+date_comp_header=Date input tag
+date_comp_text1=Gimme a date
+date_comp_text2=Date is:
+date_comp_text3=Gimme a time
+date_comp_text4=Time is:
+date_comp_text5=Gimme a date & time
+date_comp_text6=Date time is:
+date_comp_button=Update
+popup_today_string=Today is :
+popup_week_string=Wk
+
+
+selectBoxPanel=SelectBox Panel
+treePanel=Tree Panel
+
+fileupload_title=File upload
+fileupload_gimmeimage=Gimme an image:
+fileupload_name=and give it a name: 
+fileupload_button=load it up
+fileupload_msg1=The image you loaded up:
+fileupload_msg2=Link to download (and save) the image :
+fileupload_msg3=Link to show the image directly:
+fileupload_dlimg=Download image
+
+tabbed_tab1=Tab1
+tabbed_tab2=Tab2
+tabbed_tab3=Tab3
+tabbed_visible1=Tab 1 visible
+tabbed_visible2=Tab 2 visible
+tabbed_visible3=Tab 3 visible
+tabbed_submit=Common submit button
+tabbed_common= A common paragraph 
+
+js_popup=Calendar as a JavaScript popup.
+js_form=Calendar as a form.
+js_submit=Submit
+css_msg=A simple test for the 
+
+forceOne=Value 1
+forceTwo=Value 2 (with forceId)
+
+crosstable_field_column=column label
+crosstable_add_column=add a column
+crosstable_remove_column=remove the column
+crosstable_save_values=save values
+
+panelnav_products = Product Information
+panelnav_serach = » Search Products
+panelnav_serach_acc = » Search Accessory
+panelnav_search_adv = » Advanced Serach
+panelnav_serach1 = Search Products
+panelnav_serach_acc1 = Search Accessory
+panelnav_search_adv1 = Advanced Serach
+panelnav_shop = Online Shop
+panelnav_corporate = Corporate Information
+panelnav_news = » News Releases
+panelnav_investor = » Inverstors Relations
+panelnav_news1 = News Releases
+panelnav_investor1 = Inverstors Relations
+panelnav_contact = Contact
+
+external_link = http://www.irian.at

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_ca.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_ca.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_ca.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_ca.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,175 @@
+welcome = Benvingut a 
+today = Avui som {0,date,short}.
+
+
+nav_Home            = Inici 
+nav_Examples        = Exemples
+nav_Sample_1        = Mostra 1
+nav_Sample_2        = Mostra 2
+nav_aliasBean       = Alias Bean
+nav_buffer          = Búffer
+nav_dataTable       = Exemple Mestre/Detall
+nav_sortTable       = Taula ordenable
+nav_Documentation   = Documentació
+nav_Features        = Característiques
+nav_Info            = Informació
+nav_Contact         = Contacte
+nav_Copyright       = Copyright
+nav_Options         = Opcions
+nav_Components      = Components
+nav_Selectbox       = Caselles seleccionables
+nav_FileUpload      = Pujada d'arxiu
+nav_TabbedPane      = Panel amb fitxes
+nav_Calendar        = Calendari
+nav_Popup           = Popup
+nav_JsListener      = JavaScript Listener
+nav_dataList        = Llistes Dinàmiques
+nav_tree            = Arbre
+nav_tree            = Arbre2
+nav_treeTable       = Taula arbre
+nav_Validate		= Validacions
+nav_rssTicker		= RssTicker
+nav_dataScroller    = DataScroller
+nav_Date			= Data
+nav_panelstack      = Panel en pila 
+nav_css             = Full d'estils 
+nav_newspaperTable  = Taula de notícies
+nav_InputHtml		= Editor Html
+nav_forceId         = ForceId
+nav_selectOneCountry= Selecciona un país
+nav_panelnavigation = PanelNavigation Menu
+
+nav_swapimage       = SwapImage
+nav_crossDataTable  = Taula creuada
+
+# buttons
+
+button_save = Desar 
+button_apply = Aplicar
+button_cancel = Cancel.lar
+button_delete = Esborrar
+button_submit = Enviar
+
+alt_logo = MyFaces - La implementació en codi lliure de JSF
+
+option_lang = Veure aquesta pàgina en 
+option_layout = Disposició
+
+empty_selitem = Si-us-plau, selecciona...
+
+# sample1
+
+sample1_form = Un Formulari
+sample1_another_form = Un altre Formulari
+sample1_validation = Validació
+sample1_number = Nombre
+sample1_add = Sumar-los
+sample1_sub = Restar-los
+sample1_add_link = Sumar-los polsant aquest vincle
+sample1_sub_link = Restar-los polsant aquest vincle
+sample1_result = Resultat
+sample1_text = Text
+sample1_uppercase = Pasar a majúscules
+sample1_lowercase = Pasar a minúscules
+sample1_disable_validation = Desactivar la validació
+sample1_enable_validation = Activar la validació
+
+# sample2
+
+sample2_add_quote = Afegir cita
+sample2_remove_quote = Treure cita
+sample2_select_quote = seleccionar un caràcter per la cita
+sample2_select_unquote = seleccionar un caràcter pel final de cita
+
+# components examples
+
+label_cars = Model
+label_colors = Colors
+label_color = Color
+label_extras = Extres
+button_calcprice = Calcular preu
+msg_price = {0,choice,0#Configura el teu desig més profund!|1< Su precio: \u20AC\u00A0{0}}
+color_black = negre
+color_blue = blau
+color_marine = blau marí
+color_red = vermell
+extra_aircond = Aire acondicionat
+extra_sideab = Airbag lateral
+extra_mirrowheat = Calefacció retrovisors
+extra_leaderseat = Seients de cuir
+discount_0 = No vull rebaixa 
+discount_1 = Vull una rebaixa acumulada
+discount_2 = Vull una rebaixa d'empresa
+discount_2_0 = Els BeachBoys són guais
+discount_2_1 = Els Red Hot Chillis són millors
+discount_2_2 = El meu grup favorit
+radio_hint = Aquesta radio és una extensió de myfaces - pots utilitzar codi html aquí!
+sort_cartype = Tipus de cotxe
+sort_carcolor = Color del cotxe
+sales_tax = Impost
+doors=Portes
+
+validate_email = Email
+validate_credit = Targeta de crèdit
+validate_regexp = Expressió regular
+validate_equal = Igual
+
+label_country_name = País
+label_country_iso = Codi ISO
+label_country_cities = Ciutats
+new_country = Afegir un país \uffbb
+country_edit_table = Editar tots els països \uffbb
+label_country_city_add = Afegir ciutat
+label_country_city_delete = esborrar
+label_city = Ciutat
+
+dataList_simple = Llista simple
+dataList_ul = Llista no ordenada
+dataList_ol = Llista ordenada
+
+dataScroller_pages = {0} Cotxes trobats, mostrant {1} cotxes, des de {2} a {3}. Pàgina {4} / {5}
+date_comp_header=Etiqueta input de Data
+date_comp_text1=Dona'm una data
+date_comp_text2=La data és:
+date_comp_text3=Dona'm una hora
+date_comp_text4=L'hora és:
+date_comp_text5=Dona'm una data i una hora
+date_comp_text6=La data i l'hora són:
+date_comp_button=Actualizar
+popup_today_string=Avui som:
+popup_week_string=Setm.
+
+
+selectBoxPanel=Panell de SelectBox
+treePanel=Panell àrbre
+
+fileupload_title=Pujada d'arxiu
+fileupload_gimmeimage=Dona'm una imatge:
+fileupload_name=i posa-li un nom: 
+fileupload_button=carrègala
+fileupload_msg1=La imatge carregada és:
+fileupload_msg2=Vincle per baixar (i guardar) la imatge:
+fileupload_msg3=Vincle per mostrar la imatge directament:
+fileupload_dlimg=Baixar la imatge
+
+tabbed_tab1=Fitxa1
+tabbed_tab2=Fitxa2
+tabbed_tab3=Fitxa3
+tabbed_visible1=Fitxa 1 visible
+tabbed_visible2=Fitxa 2 visible
+tabbed_visible3=Fitxa 3 visible
+tabbed_submit=Botó comú d'Enviament
+tabbed_common= Paràgraf comú
+
+js_popup=Calendari com un popup JavaScript.
+js_form=Calendari com un formulari.
+js_submit=Enviar
+css_msg=Una prova simple per  
+
+forceOne=Valor 1
+forceTwo=Valor 2 (amb forceId)
+
+crosstable_field_column=etiqueta de columna
+crosstable_add_column=afegir columna
+crosstable_remove_column=eliminar columna
+crosstable_save_values=desar valors

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_de.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_de.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_de.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_de.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,117 @@
+welcome = Willkommen zu
+today = Heute ist der {0,date,short}.
+
+
+nav_Home            = Startseite
+nav_Examples        = Beispiele
+nav_Sample_1        = Beispiel 1
+nav_Sample_2        = Beispiel 2
+nav_aliasBean		= AliasBean
+nav_dataTable       = Master/Detail Beispiel
+nav_sortTable       = Sortierbare Tabelle
+nav_Documentation   = Dokumentation
+nav_Features        = Features
+nav_Info            = Info
+nav_Contact         = Kontakt
+nav_Copyright       = Copyright
+nav_Options         = Einstellungen
+nav_Components      = Komponenten
+nav_Selectbox       = Selectboxen
+nav_FileUpload      = Datei hochladen
+nav_TabbedPane      = Karteireiter
+nav_Calendar        = Kalender
+nav_Popup           = Popup
+nav_dataList        = Dynamische Listen
+nav_tree            = Baum
+nav_treeTable       = Baum Tabelle
+nav_Validate		= Validierungen
+nav_rssTicker		= RssTicker
+nav_dataScroller    = DataScroller
+nav_Date			= Datum
+nav_css             = Stylesheet
+nav_newspaperTable  = Newspaper Table
+nav_forceId         = ForceId
+nav_swapimage       = SwapImage
+nav_crossDataTable  = Kreuztabelle
+nav_panelnavigation = PanelNavigation Menu
+
+# buttons
+
+button_save = Speichern
+button_apply = Übernehmen
+button_cancel = Abbrechen
+button_delete = Löschen
+
+alt_logo = MyFaces - Die Opensource JSF Implementierung
+
+option_lang = Sprachauswahl
+option_layout = Layout
+
+empty_selitem = Bitte auswählen ...
+
+
+# components examples
+
+label_cars = Modell
+label_colors = Farben
+label_color = Farbe
+label_extras = Extras
+button_calcprice = Preis berechnen
+msg_price = {0,choice,0#Stell dir dein Traumauto zusammen!|1< Dein Preis: \u20AC\u00A0{0}}
+color_black = schwarz
+color_blue = blau
+color_marine = Marine blau
+color_red = rot
+extra_aircond = Klima-Anlage
+extra_sideab = Seitenairbag
+extra_mirrowheat = Geheizte Aussenspiegel
+extra_leaderseat = Ledersitze
+discount_0 = Ich will keinen Rabatt
+discount_1 = Ich will den Treuerabatt
+discount_2 = Ich will den Großkundenrabatt
+discount_2_0 = BeachBoys sind super
+discount_2_1 = Red Hot Chillis sind besser
+discount_2_2 = Meine Lieblingsband
+radio_hint = This Radio is a myfaces extension - you can use html code here!
+sort_cartype = Typ
+sort_carcolor = Farbe
+sales_tax = Mehrwertsteuer
+Doors=Türen
+
+label_country_name = Land
+label_country_iso = Iso-Code
+new_country = Neues Land anlegen »
+country_edit_table = Alle Länder bearbeiten »
+label_country_city_add = Stadt hinzufügen
+label_country_city_delete = löschen
+label_city = Stadt
+
+dataList_simple = Einfache Liste
+dataList_ul = Unsortierte Liste
+dataList_ol = Nummerierte Liste
+
+dataScroller_pages = {0} Autos gefunden, zeigend {1} Autos, von {2} bis {3}. Seite {4} / {5}
+date_comp_header=Datumskomponente
+date_comp_text1=Geben Sie ein Datum an
+date_comp_text2=Das Datum ist:
+date_comp_text3=Geben Sie eine Uhrzeit an
+date_comp_text4=Die Uhrzeit ist:
+date_comp_text5=Geben Sie Datum und Uhrzeit an
+date_comp_text6=Datum und Uhrzeit:
+date_comp_button=Aktualisieren
+popup_today_string=Heute ist :
+popup_week_string=KW
+
+validate_email = Email
+validate_credit = Credit Card
+validate_regexp = Regular Expression
+validate_equal = Equal
+
+forceOne=Eingabe 1
+forceTwo=Eingabe 2 (mit forceId) 
+
+
+crosstable_field_column=Spaltenname
+crosstable_add_column=Spalte hinzufügen
+crosstable_remove_column=Spalte löschen
+crosstable_save_values=Werte speichern

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_en.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_en.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_en.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_en.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1 @@
+# default is en, so nothing is required here

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_es.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_es.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_es.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_es.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,174 @@
+welcome = Bienvenido a 
+today = Hoy estamos en {0,date,short}.
+
+
+nav_Home            = Inicio 
+nav_Examples        = Ejemplos
+nav_Sample_1        = Muestra 1
+nav_Sample_2        = Muestra 2
+nav_aliasBean       = Bean con alias
+nav_buffer          = Buffer
+nav_dataTable       = Ejemplo Maestro/Detalle
+nav_sortTable       = Tabla ordenable
+nav_Documentation   = Documentación 
+nav_Features        = Características
+nav_Info            = Información
+nav_Contact         = Contacto
+nav_Copyright       = Copyright
+nav_Options         = Opciones
+nav_Components      = Componentes
+nav_Selectbox       = Casillas seleccionables
+nav_FileUpload      = Subida de fichero
+nav_TabbedPane      = Panel con fichas
+nav_Calendar        = Calendario
+nav_Popup           = Popup
+nav_JsListener      = JavaScript Listener
+nav_dataList        = Listas Dinámicas
+nav_tree            = Árbol
+nav_treeTable       = Tabla en Árbol
+nav_Validate		= Validaciones
+nav_rssTicker		= RssTicker
+nav_dataScroller    = DataScroller
+nav_Date			= Fecha
+nav_panelstack      = Panel en pila 
+nav_css             = Hoja de estilos
+nav_newspaperTable  = Tabla de Noticias
+nav_InputHtml		= Editor Html
+nav_forceId         = ForceId
+nav_selectOneCountry= Selecciona una casilla de país
+nav_panelnavigation = PanelNavigation Menu
+
+nav_swapimage       = SwapImage
+nav_crossDataTable  = Tabla cruzada
+
+# buttons
+
+button_save = Guardar 
+button_apply = Aplicar
+button_cancel = Cancelar
+button_delete = Borrar
+button_submit = Enviar
+
+alt_logo = MyFaces - La implementación en código abierto de JSF
+
+option_lang = Ver esta página en 
+option_layout = Disposición
+
+empty_selitem = Por favor, selecciona...
+
+# sample1
+
+sample1_form = Un Formulario
+sample1_another_form = Otro Formulario
+sample1_validation = Validación
+sample1_number = Número
+sample1_add = Sumarlos
+sample1_sub = Restarlos
+sample1_add_link = Sumarlos pulsando este vínculo
+sample1_sub_link = Restarlos pulsando este vínculo
+sample1_result = Resultado
+sample1_text = Texto
+sample1_uppercase = Pasar a mayúsculas
+sample1_lowercase = Pasar a minúsculas
+sample1_disable_validation = Desactivar la validación
+sample1_enable_validation = Activar la validación
+
+# sample2
+
+sample2_add_quote = Añadir cita
+sample2_remove_quote = Quitar cita
+sample2_select_quote = seleccionar un caracter para la cita
+sample2_select_unquote = seleccionar un caracter para el fin de cita
+
+# components examples
+
+label_cars = Modelo
+label_colors = Colores
+label_color = Color
+label_extras = Extras
+button_calcprice = Calcular precio
+msg_price = {0,choice,0#¡Configura tu deseo más profundo!|1< Su precio: \u20AC\u00A0{0}}
+color_black = negro
+color_blue = azul
+color_marine = azul marino
+color_red = rojo
+extra_aircond = Aire acondicionado
+extra_sideab = Airbag lateral
+extra_mirrowheat = Calefacción retrovisores
+extra_leaderseat = Asientos de cuero
+discount_0 = No quiero rebaja
+discount_1 = Quiero una rebaja acumulada
+discount_2 = Quiero una rebaja de empresa
+discount_2_0 = Los BeachBoys son guays
+discount_2_1 = Los Red Hot Chillis son mejores
+discount_2_2 = Mi grupo favorito
+radio_hint = Esta radio es una extensión de myfaces - ¡puedes utilizar código html aquí!
+sort_cartype = Tipo de coche
+sort_carcolor = Color del coche
+sales_tax = Impuesto
+doors=Puertas
+
+validate_email = Email
+validate_credit = Tarjeta de crédito
+validate_regexp = Expresión regular
+validate_equal = Igual
+
+label_country_name = País
+label_country_iso = Código ISO
+label_country_cities = Ciudades
+new_country = Añadir un país \uffbb
+country_edit_table = Editar todos los países \uffbb
+label_country_city_add = Añadir ciudad
+label_country_city_delete = borrar
+label_city = Ciudad
+
+dataList_simple = Lista simple
+dataList_ul = Lista no ordenada
+dataList_ol = Lista ordenada
+
+dataScroller_pages = {0} Coches encontrados, mostrando {1} coches, de {2} a {3}. Página {4} / {5}
+date_comp_header=Etiqueta input de Fecha
+date_comp_text1=Dame una fecha
+date_comp_text2=La fecha es:
+date_comp_text3=Dame una hora
+date_comp_text4=La hora es:
+date_comp_text5=Dame una fecha y la hora
+date_comp_text6=La fecha y la hora son:
+date_comp_button=Actualizar
+popup_today_string=Hoy es:
+popup_week_string=Sem.
+
+
+selectBoxPanel=Panel de SelectBox
+treePanel=Panel árbol
+
+fileupload_title=Subida de archivo
+fileupload_gimmeimage=Dame una imagen:
+fileupload_name=y ponle un nombre: 
+fileupload_button=cárgala
+fileupload_msg1=La imagen cargada es:
+fileupload_msg2=Vínculo para bajar (y guardar) la imagen:
+fileupload_msg3=Vínculo para mostrar la imagen directamente:
+fileupload_dlimg=Bajar imagen
+
+tabbed_tab1=Ficha1
+tabbed_tab2=Ficha2
+tabbed_tab3=Ficha3
+tabbed_visible1=Ficha 1 visible
+tabbed_visible2=Ficha 2 visible
+tabbed_visible3=Ficha 3 visible
+tabbed_submit=Botón común de Envío
+tabbed_common= Parágrafo común 
+
+js_popup=Calendario como un popup JavaScript.
+js_form=Calendario como un formulario.
+js_submit=Enviar
+css_msg=Una prueba simple para 
+
+forceOne=Valor 1
+forceTwo=Valor 2 (con forceId)
+
+crosstable_field_column=etiqueta de columna
+crosstable_add_column=añadir columna
+crosstable_remove_column=eliminar columna
+crosstable_save_values=guardar valores

Added: myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_fr.properties
URL: http://svn.apache.org/viewvc/myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_fr.properties?rev=903939&view=auto
==============================================================================
--- myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_fr.properties (added)
+++ myfaces/current20/test-webapp/webapp/src/main/resources/org/apache/myfaces/examples/resource/example_messages_fr.properties Thu Jan 28 02:03:43 2010
@@ -0,0 +1,110 @@
+welcome = Bienvenue à
+today = Aujourd''hui, le {0,date,short}.
+
+
+nav_Home            = Page d'accueil
+nav_Examples        = Exemples
+nav_Sample_1        = Exemple 1
+nav_Sample_2        = Exemple 2
+nav_dataTable       = Maître/Détail
+nav_sortTable       = Table triable
+nav_Documentation   = Documentation
+nav_Features        = Caractéristiques
+nav_Info            = Info
+nav_Contact         = Contact
+nav_Copyright       = Copyright
+nav_Options         = Options
+nav_Components      = Composants
+nav_Selectbox       = Boîtes de sélection
+nav_FileUpload      = Upload de fichier
+nav_TabbedPane      = Panneau à onglets
+nav_Calendar        = Calendrier
+nav_Popup           = Popup
+nav_dataList        = Listes dynamiques
+nav_tree            = Arbre
+nav_treeTable       = Arbre Table
+nav_Validate		= Validations
+nav_rdfTicker		= Ticker Rdf
+nva_dataScroller    = DataScroller
+nav_Date			= Date
+nav_css             = Stylesheet
+nav_newspaperTable  = Newspaper Table
+nav_forceId         = ForceId
+nav_swapimage       = SwapImage
+nav_panelnavigation = PanelNavigation Menu
+
+
+# buttons
+
+button_save = Sauvegarder
+button_apply = Appliquer
+button_cancel = Annuler
+button_delete = Effacer
+
+alt_logo = MyFaces - l''implémentation JSF open source
+
+option_lang = Voir cette page en
+option_layout = Disposition
+
+empty_selitem = Choisissez ...
+
+
+# components examples
+
+label_cars = Modèle
+label_colors = Couleurs
+label_color = Couleur
+label_extras = Extras
+button_calcprice = Calculer le prix
+msg_price = {0,choice,0#Configurer votre rêve le plus fou!|1< Votre prix: \u20AC\u00A0{0}}
+color_black = noir
+color_blue = bleu
+color_marine = bleu marine
+color_red = rouge
+extra_aircond = Air conditionné
+extra_sideab = Airbags de côté
+extra_mirrowheat = Rétroviseurs chauffés
+extra_leaderseat = Siéges en cuir
+discount_0 = Je ne veux pas de remise
+discount_1 = Je veux une remise cumulée
+discount_2 = Je veux une remise entreprise
+discount_2_0 = Les BeachBoys sont super
+discount_2_1 = Les Red Hot Chillis sont mieux
+discount_2_2 = Mon groupe favori
+radio_hint = Ce radio est une extension de myfaces, vous pouvez y intégrer de l''HTML dedans !
+sort_cartype = Type de voiture
+sort_carcolor = Couleur
+sales_tax = Taxe
+doors = Portes
+
+label_country_name = Pays
+label_country_iso = Code Iso
+new_country = Ajouter un pays ?
+country_edit_table = Editer tous les pays ?
+label_country_city_add = Ajouter une ville
+label_country_city_delete = effacer
+label_city = Ville
+
+dataList_simple = Liste simple
+dataList_ul = Liste non ordonnée
+dataList_ol = Liste ordonnée
+
+dataScroller_pages = {0} Voitures trouvées, {1} voitures affichées, de {2} à {3}. Page {4} / {5}
+date_comp_header=Tag input Date
+date_comp_text1=Entrez une date
+date_comp_text2=La date est :
+date_comp_text3=Entrez une heure
+date_comp_text4=L'heure est
+date_comp_text5=Entrez la date et l'heure
+date_comp_text6=La date et l'heure sont :
+date_comp_button=Mise à jour
+popup_today_string=Aujourd'hui, le :
+popup_week_string=Sem.
+
+validate_email = Email
+validate_credit = Credit Card
+validate_regexp = Regular Expression
+validate_equal = Equal
+
+forceOne=Value 1 @TRANSLATE
+forceTwo=Value 2 (with forceId) @TRANSLATE