Buggy code:
public class VeryTemporaryDefaultFaceletResolver extends AbstractTagResolvingStrategy < TLDWrapper , String > implements IFaceletTagResolvingStrategy { public static final String ID = "org.eclipse.jst.jsf.facelet.core.VeryTemporaryDefaultFaceletResolver" ; private final DefaultTagTypeInfo _coreHtmlTypeInfo ; private final IProject _project ; private final FaceletDocumentFactory _factory ; private final ViewMetadataLoader _viewLoader ; public VeryTemporaryDefaultFaceletResolver ( final IProject project , final FaceletDocumentFactory factory ) { } @ Override public final String getId ( ) { } @ Override public ITagElement resolve ( final TLDWrapper element ) { } private ITagElement createFromTypeInfo ( final TagIdentifier tagId , final TypeInfo typeInfo ) { final MetadataAttributeAdvisor advisor = new MetadataAttributeAdvisor ( tagId , _viewLoader ) ; if ( typeInfo instanceof ComponentTypeInfo ) { <START_BUG> return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . ComponentTag ( tagId . getUri ( ) , tagId . getTagName ( ) , ( ( ComponentTypeInfo ) ( typeInfo ) ) , _factory , advisor ) ; <END_BUG> } else if ( typeInfo instanceof ConverterTypeInfo ) { return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . ConverterTag ( tagId . getUri ( ) , tagId . getTagName ( ) , ( ( ConverterTypeInfo ) ( typeInfo ) ) , null , _factory , advisor ) ; } else if ( typeInfo instanceof ValidatorTypeInfo ) { return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . ValidatorTag ( tagId . getUri ( ) , tagId . getTagName ( ) , ( ( ValidatorTypeInfo ) ( typeInfo ) ) , null , _factory , advisor ) ; } else if ( typeInfo instanceof TagHandlerType ) { return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . HandlerTag ( tagId . getUri ( ) , tagId . getTagName ( ) , ( ( TagHandlerType ) ( typeInfo ) ) , null , _factory , advisor ) ; } else if ( DefaultTagTypeInfo . isDefaultLib ( tagId . getUri ( ) ) ) { return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . NoArchetypeFaceletTag ( tagId . getUri ( ) , tagId . getTagName ( ) , _factory , advisor ) ; } return null ; } public final String getDisplayName ( ) { } private static final ComponentTypeInfo COMPINFO_COMPONENT = new ComponentTypeInfo ( "facelets.ui.ComponentRef" , "com.sun.facelets.tag.ui.ComponentRef" , new String [ ] { "javax.faces.component.UIComponentBase" , "javax.faces.component.UIComponent" , "java.lang.Object" } , new String [ ] { "javax.faces.component.StateHolder" } , "facelets" , null ) ; private static final ComponentTypeInfo COMPINFO_DEBUG = new ComponentTypeInfo ( "facelets.ui.Debug" , "com.sun.facelets.tag.ui.UIDebug" , new String [ ] { "javax.faces.component.UIComponentBase" , "javax.faces.component.UIComponent" , "java.lang.Object" } , new String [ ] { "javax.faces.component.StateHolder" } , "facelets" , null ) ; private static final ComponentTypeInfo COMPINFO_REPEAT = new ComponentTypeInfo ( "facelets.ui.Repeat" , "com.sun.facelets.component.UIRepeat" , new String [ ] { "javax.faces.component.UIComponentBase" , "javax.faces.component.UIComponent" , "java.lang.Object" } , new String [ ] { "javax.faces.component.StateHolder" , "javax.faces.component.NamingContainer" } , "facelets" , null ) ; private TypeInfo getTypeInfo ( final TagIdentifier tagId , final JSFVersion jsfVersion ) { } private static Map < TagIdentifier , TypeInfo > JSF11_ELEMENTS ; private static Map < TagIdentifier , TypeInfo > JSF12_ELEMENTS ; }

Fix:
return new org . eclipse . jst . jsf . facelet . core . internal . tagmodel . ComponentTag ( tagId . getUri ( ) , tagId . getTagName ( ) , ( ( ComponentTypeInfo ) ( typeInfo ) ) , null , _factory , advisor ) ;