Foros del Web » Programación para mayores de 30 ;) » Java »

Preocupación por error PrimeFaces 4.0 para capturar el valor de la selectOneMenu?

Estas en el tema de Preocupación por error PrimeFaces 4.0 para capturar el valor de la selectOneMenu? en el foro de Java en Foros del Web. Hola comunidad Tengo una pregunta, tengo un formulario en el que tengo un complejo de diseño con PrimeFaces 4 pasan a tener en la zona ...
  #1 (permalink)  
Antiguo 15/12/2013, 09:31
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 15 años, 2 meses
Puntos: 6
Pregunta Preocupación por error PrimeFaces 4.0 para capturar el valor de la selectOneMenu?

Hola comunidad Tengo una pregunta, tengo un formulario en el que tengo un complejo de diseño con PrimeFaces 4 pasan a tener en la zona norte tiene una barra de menú (no he puesto un formulario, no estoy seguro de si esto también), seleccione una opción para la nueva actividad me plantea una ventana emergente en la que trabajo Salida cargas en un combo, lo que pasa es me da un error en el valor de la selectOneMenu, pero le doy el evento como si la captura del valor de este combo, pero me preocupa , muestro mi código.

Código:
<h:body>
    <p:layout fullPage="true" >

        <p:layoutUnit id="top" position="north" size="40">
            <h:form prependId="false" id="menuBar">
                <p:menubar autoDisplay="false" model="#{mantClienteMB.model}" />

                <p:dialog header="Nuevo Elemento" widgetVar="dlg" resizable="false">  
                    <h:panelGrid columns="2" style="margin-bottom:10px">  
                        <h:outputLabel value="Crear nuevo elemento:" />  
                        <p:selectOneMenu value="#{mantClienteMB.codElement}" filter="true" 
                            effect="fade" filterMatchMode="startsWith" style="width: 16em;">  
                            <f:selectItem itemLabel="Seleccione" itemValue="" />
                            <f:selectItems value="#{mantClienteMB.elements}" var="elem"
                             itemValue="#{elem.scActivityId}" itemLabel="#{elem.description}" /> 
                            <p:column>  
                                #{elem.description}
                            </p:column>  
                        </p:selectOneMenu>
                    </h:panelGrid>  

                    <p:commandButton value="Crear" actionListener="#{mantClienteMB.nuevoActividad}"
                     update=":menuBar" oncomplete="dlg.hide();"/>
                    <p:commandButton value="Salir" update=":menuBar" oncomplete="dlg.hide();"/>   
                </p:dialog> 
            </h:form>
        </p:layoutUnit>

        <p:layoutUnit id="bottom" position="south" size="60">
            <div id="pie"></div>
        </p:layoutUnit>

        <p:layoutUnit id="left" position="west" size="300" resizable="true" closable="true" collapsible="true" header="Opciones" minSize="200">
            <p:accordionPanel>
                <p:tab title="Calendario Actual">
                    <br />
                    <p:calendar mode="inline" navigator="none"/>
                    <br />
                </p:tab>
            </p:accordionPanel>
        </p:layoutUnit>

        <p:layoutUnit id="center" position="center">
            <ui:insert name="contenido" />
        </p:layoutUnit>

    </p:layout>
</h:body>
Imagen : http://s2.subirimagenes.com/imagen/p...7055layout.png

Code Java:

Código:
@Component("mantClienteMB")
@Scope("view")
public class MantenimientoClienteController implements Serializable {
    @Autowired
    private ActivityService activityService;

    private List<ScActivity> elements;  

    private int codElement;


    @PostConstruct
    public void init() {
        try {
            this.setElements(new ArrayList<ScActivity>());
            newElements();
            menuBean();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private void newElements() {
        this.setElements(activityService.listarActivity());
    }

    public void nuevoActividad() {      
        System.out.println("==> "+codElement);      
    }
    .........
}
Mensaje de Error:

Código:
com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
Grave: Error Rendering View[/pages/layoutComplex.xhtml]
java.lang.ClassCastException: javax.faces.component.html.HtmlForm cannot be cast to org.primefaces.component.layout.Layout
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeHeader(LayoutUnitRenderer.java:76)
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:43)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)

dic 14, 2013 8:39:40 PM com.sun.faces.context.ExceptionHandlerImpl throwIt
Información: Exception when handling error trying to reset the response.
java.lang.ClassCastException: javax.faces.component.html.HtmlForm cannot be cast to org.primefaces.component.layout.Layout
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeHeader(LayoutUnitRenderer.java:76)
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:43)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

Etiquetas: jsf
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:43.