2013-04-11 43 views
2

我有以下形式定义:警告:不支持的组件家庭/渲染器型:org.omnifaces.component.script/javax.faces.Button

<ui:define name="body"> 
    <h:form 
     id="posForm" 
     styleClass="well span12"> 
.... 
     <o:commandScript 
      id="createTransactionCommandScript" 
      rendered="#{multiTenantBean.currentAccount.stripePublishableKey != null}" 
      name="createTransaction" 
      actionListener="#{posMB.createTransaction}" 
      execute="@form" 
      render="@form" /> 
    </h:form> 
</ui:define> 

当我打开我的网页,我得到这个错误吐到Stdout反复:

Apr 11, 2013 6:31:53 PM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer 
WARNING: Unsupported component-family/renderer-type: org.omnifaces.component.script/javax.faces.Button 
Apr 11, 2013 6:31:53 PM javax.faces.component.UIComponentBase getRenderer 
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /pos.xhtml][Class: javax.faces.component.html.HtmlBody,Id: j_id_m][Class: javax.faces.component.html.HtmlForm,Id: posForm][Class: org.omnifaces.component.script.CommandScript,Id: createTransactionCommandScript]} (component-family=org.omnifaces.component.script, renderer-type=javax.faces.Button) 
Apr 11, 2013 6:31:53 PM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer 
WARNING: Unsupported component-family/renderer-type: org.omnifaces.component.script/javax.faces.Button 
Apr 11, 2013 6:31:53 PM javax.faces.component.UIComponentBase getRenderer 
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /pos.xhtml][Class: javax.faces.component.html.HtmlBody,Id: j_id_m][Class: javax.faces.component.html.HtmlForm,Id: posForm][Class: org.omnifaces.component.script.CommandScript,Id: createTransactionCommandScript]} (component-family=org.omnifaces.component.script, renderer-type=javax.faces.Button) 
Apr 11, 2013 6:31:53 PM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer 
WARNING: Unsupported component-family/renderer-type: org.omnifaces.component.script/javax.faces.Button 
Apr 11, 2013 6:31:53 PM javax.faces.component.UIComponentBase getRenderer 
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /pos.xhtml][Class: javax.faces.component.html.HtmlBody,Id: j_id_m][Class: javax.faces.component.html.HtmlForm,Id: posForm][Class: org.omnifaces.component.script.CommandScript,Id: createTransactionCommandScript]} (component-family=org.omnifaces.component.script, renderer-type=javax.faces.Button) 
Apr 11, 2013 6:31:53 PM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer 
WARNING: Unsupported component-family/renderer-type: org.omnifaces.component.script/javax.faces.Button 
Apr 11, 2013 6:31:53 PM javax.faces.component.UIComponentBase getRenderer 
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /pos.xhtml][Class: javax.faces.component.html.HtmlBody,Id: j_id_m][Class: javax.faces.component.html.HtmlForm,Id: posForm][Class: org.omnifaces.component.script.CommandScript,Id: createTransactionCommandScript]} (component-family=org.omnifaces.component.script, renderer-type=javax.faces.Button) 

我在做什么错在这里?

回答

3

你没有做错什么。 CommandScript继承自UICommand类的javax.faces.Button的渲染器类型,它从其扩展而来,而actually已被设置为null,因为CommandScript自己渲染。 MyFaces只是警告相关的渲染器实现无法解析。这在OmniFaces 1.5中得到了解决。