<?xml version="1.0"?>

<!DOCTYPE faces-config PUBLIC
  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
  "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">

<!-- =========== FULL CONFIGURATION FILE ================================== -->

<faces-config>

	<application>
		<action-listener>
			org.seasar.jsf.application.ActionListenerImpl
		</action-listener>
    	<view-handler>
      		org.seasar.jsf.application.S2ViewHandler
    	</view-handler>
    	<state-manager>
      		org.seasar.jsf.application.S2StateManager
    	</state-manager>
    	<variable-resolver>
    		org.seasar.jsf.el.S2VariableResolver
    	</variable-resolver>
    	<property-resolver>
    		org.seasar.jsf.el.S2PropertyResolver
    	</property-resolver>
	</application>
	
	<factory>
		<lifecycle-factory>
			org.seasar.jsf.lifecycle.LifecycleFactoryImpl
		</lifecycle-factory>
	</factory>
	
	<render-kit>
		<renderer>
	    	<component-family>javax.faces.Output</component-family>
	    	<renderer-type>org.seasar.jsf.Element</renderer-type>
	    	<renderer-class>
	        	org.seasar.jsf.render.html.HtmlElementRenderer
	    	</renderer-class>
	    </renderer>
	    <renderer>
	    	<component-family>javax.faces.Output</component-family>
	    	<renderer-type>org.seasar.jsf.Text</renderer-type>
	    	<renderer-class>
	        	org.seasar.jsf.render.html.HtmlTextRenderer
	    	</renderer-class>
	    </renderer>
	    <renderer>
	    	<component-family>javax.faces.Output</component-family>
	    	<renderer-type>org.seasar.jsf.Base</renderer-type>
	    	<renderer-class>
	        	org.seasar.jsf.render.html.HtmlBaseRenderer
	    	</renderer-class>
	    </renderer>
	    <renderer>
	    	<component-family>javax.faces.Output</component-family>
	    	<renderer-type>org.seasar.jsf.Title</renderer-type>
	    	<renderer-class>
	        	org.seasar.jsf.render.html.HtmlTitleRenderer
	    	</renderer-class>
	    </renderer>
	    <renderer>
	    	<component-family>javax.faces.Output</component-family>
	    	<renderer-type>org.seasar.jsf.Link</renderer-type>
	    	<renderer-class>
	        	org.seasar.jsf.render.html.HtmlLinkRenderer
	    	</renderer-class>
	    </renderer>
	</render-kit>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Element
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.UIElement
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Text
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.UIText
    	</component-class>
	</component>

	<component>
    	<component-type>
      		javax.faces.HtmlInputText
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.html.S2HtmlInputText
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		javax.faces.HtmlForm
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.html.S2HtmlForm
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		javax.faces.ViewRoot
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.S2UIViewRoot
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		javax.faces.SelectItem
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.S2UISelectItem
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.ForEach
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.ForEach
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Insert
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.UIInsert
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Base
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.html.HtmlBase
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Title
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.html.HtmlTitle
    	</component-class>
	</component>
	
	<component>
    	<component-type>
      		org.seasar.jsf.Link
    	</component-type>
    	<component-class>
      		org.seasar.jsf.component.html.HtmlLink
    	</component-class>
	</component>
	
	<converter>
		<converter-for-class>java.util.Date</converter-for-class>
		<converter-class>org.seasar.jsf.convert.S2DateTimeConverter</converter-class>
	</converter>
	
	<converter>
		<converter-for-class>java.sql.Timestamp</converter-for-class>
		<converter-class>org.seasar.jsf.convert.S2DateTimeConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.lang.Integer</converter-for-class>
		<converter-class>javax.faces.convert.IntegerConverter</converter-class>
  	</converter>
  
	<converter>
		<converter-for-class>java.lang.Long</converter-for-class>
		<converter-class>javax.faces.convert.LongConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.lang.Short</converter-for-class>
		<converter-class>javax.faces.convert.ShortConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.lang.Float</converter-for-class>
		<converter-class>javax.faces.convert.FloatConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.lang.Double</converter-for-class>
		<converter-class>javax.faces.convert.DoubleConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.math.BigDecimal</converter-for-class>
		<converter-class>javax.faces.convert.BigDecimalConverter</converter-class>
	</converter>
  
	<converter>
		<converter-for-class>java.math.BigInteger</converter-for-class>
		<converter-class>javax.faces.convert.BigIntegerConverter</converter-class>
	</converter>

</faces-config>