<?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>


        <renderer>
            <component-family>javax.faces.Input</component-family>
            <renderer-type>javax.faces.Hidden</renderer-type>
            <renderer-class>org.apache.myfaces.renderkit.html.HtmlHiddenRenderer</renderer-class>
            <renderer-extension>
                <mfp:component-type>javax.faces.HtmlHidden</mfp:component-type>
            </renderer-extension>
        </renderer>
    </render-kit>
</faces-config>
