2015-05-14 7 views
1

Привет, У меня есть эта ошибка, когда я пытаюсь объединить o: massAttribute с o: validateOrder, я видел, что o: validateOrder отключил атрибут, любые идеи, что вызывает эту проблему.Ошибка Omnifaces 2.0 o: massAttribute с o: validateOrder

У меня есть этот код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:a4j="http://richfaces.org/a4j" 
    xmlns:rich="http://richfaces.org/rich" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:c="http://java.sun.com/jsp/jstl/core" 
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    xmlns:tablas="http://java.sun.com/jsf/composite/tablas" 
    xmlns:o="http://omnifaces.org/ui" 
    xmlns:of="http://omnifaces.org/functions" 
    xmlns:templates="http://java.sun.com/jsf/composite/templates" 
    > 

<body> 

    <f:metadata> 
     <f:event type="preRenderView" listener="#{baseController.iniciarConversacion()}" /> 
    </f:metadata> 

    <ui:composition template="/templates/TemplateABM.xhtml"> 
     <ui:define name="title"> 
       #{msgs['facturacion.abm.generacion.factura.individual.pagina.titulo']} 
      </ui:define> 
     <ui:define name="top"> 
      <h1>#{msgs['facturacion.abm.generacion.factura.individual.titulo']}</h1> 
     </ui:define> 
     <ui:define name="content"> 

      <h:form id="formFacturaIndividual"> 


      <h:panelGroup id="panelFechas"> 
       <h:inputHidden id="fechaInicioFactura" value="#{facturaController.fechaInicioFactura}"> 
        <f:convertDateTime type="date" pattern="dd/MM/yy"/> 
       </h:inputHidden> 

       <h:inputHidden id="fechaFinFactura" value="#{facturaController.fechaFinFactura}"> 
        <f:convertDateTime type="date" pattern="dd/MM/yy"/> 
       </h:inputHidden>    

       <h:inputHidden id="fechaEmisionComprobanteUltima" value="#{comprobanteController.fechaEmisionComprobanteUltima}"> 
        <f:convertDateTime type="date" pattern="dd/MM/yy"/> 
       </h:inputHidden>    
      </h:panelGroup> 

       <o:massAttribute name="disabled" value="#{tipoComprobanteController.entidad == null}"> 
        <rich:panel id="panelDatosFactura" header="#{msgs['facturacion.abm.generacion.padron.panel.datos.factura']}"> 

         <h:panelGrid id="DatosFactura" columns="3"> 

          <h:outputLabel value="#{msgs['facturacion.abm.generacion.padron.fecha.factura']}" for="fechaFactura"/> 
          <rich:calendar 
           id="fechaFactura" 
           datePattern="dd/MM/yyyy" 
           showWeeksBar="false" 
           enableManualInput="true" 
           value="#{generacionFacturacionIndividualController.facturaBean.fechaFactura}" 
           required="true" 
           requiredMessage="La Fecha de la Factura es Obligatoria" > 

          </rich:calendar> 
          <h:panelGroup> 
           <rich:message for="fechaFactura"/> 
           <o:validateOrder id="validacionFechaFacturaMenorAFechaInicioFactura" type="gte" components="fechaFactura fechaInicioFactura" 
           message="#{msgs['comun.abm.fecha.factura.menor.limite.dia']}" showMessageFor="fechaFactura" disabled="false" /> 
           <o:validateOrder id="validacionFechaFacturaMayorAFechaFinFactura" type="lte" components="fechaFactura fechaFinFactura" 
           message="#{msgs['comun.abm.fecha.factura.menor.limite.dia']}" showMessageFor="fechaFactura" disabled="false" />        
           <o:validateOrder id="validacionFechaFacturaMayorAFechaEmisionUltimoComprobante" type="gte" components="fechaFactura fechaEmisionComprobanteUltima" 
           message="#{of:format1(msgs['comun.abm.fecha.factura.menor.ultimo.comprobante'], comprobanteController.fechaEmisionComprobanteUltima)}" showMessageFor="fechaFactura" disabled="false" />                        
          </h:panelGroup> 

         </h:panelGrid> 

        </rich:panel> 
       </o:massAttribute> 


      </h:form> 

     </ui:define> 
    </ui:composition> 

</body> 
</html> 

при запуске этого им получать это исключение:

Caused by: java.lang.IllegalArgumentException: disabled 
    at javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:2347) 
    at org.omnifaces.taghandler.MassAttribute.applyMassAttribute(MassAttribute.java:153) 
    at org.omnifaces.taghandler.MassAttribute.applyMassAttribute(MassAttribute.java:162) 
    at org.omnifaces.taghandler.MassAttribute.applyMassAttribute(MassAttribute.java:162) 
    at org.omnifaces.taghandler.MassAttribute.applyMassAttribute(MassAttribute.java:162) 
    at org.omnifaces.taghandler.MassAttribute.apply(MassAttribute.java:145) 
    at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) 
    at org.richfaces.view.facelets.html.BehaviorsAddingComponentHandlerWrapper.applyNextHandler(BehaviorsAddingComponentHandlerWrapper.java:53) 
    at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:187) 
    at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) 
    at com.sun.faces.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:106) 
    at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:178) 
    at com.sun.faces.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFaceletContext.java:395) 
    at com.sun.faces.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:366) 
    at com.sun.faces.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:111) 
    at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) 
    at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) 
    at org.richfaces.view.facelets.html.BehaviorsAddingComponentHandlerWrapper.applyNextHandler(BehaviorsAddingComponentHandlerWrapper.java:53) 
    at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:187) 
    at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) 
    at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) 
    at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) 
    at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) 
    at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:323) 
    at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:382) 
    at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:361) 
    at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199) 
    at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:155) 
    at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) 
    at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) 
    at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:164) 
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:914) 
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99) 
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) 
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) 
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) 
    ... 23 more 

если я удалить О: validateOrder код работает

+0

Правильно, этот атрибут неправильно возвращает 'Boolean' вместо' boolean'. Когда я снова за моей установкой (после выходных), [я исправлю это] (https://github.com/omnifaces/omnifaces/issues/131). Спасибо за сообщение и извините за любую задержку! – BalusC

ответ

1

Это вызвано isXxx() getter incorrectly, возвращающий Boolean вместо boolean.

Исправление доступно в соответствии с сегодняшним 2.1-SNAPSHOT и будет выпущено в 2.1.

 Смежные вопросы

  • Нет связанных вопросов^_^