2012-07-06 18 views
6

Recientemente he actualizado mi PrimeFaces-proyecto para la nueva versión de PrimeFaces.Primefaces 3.3.1 rendimiento de lista de selección es lento

Todo parece funcionar bien, pero la lista de selección es muy lento cuando se hace clic en el botón "agregar todos". Tengo un gran conjunto de datos (alrededor de 130 elementos) en la lista. El problema también se describe en este forum post.

UPDATE: un ejemplo muy básico debería demostrar el problema:

<p:pickList value="#{testForm.dualList}" 
      var="id" 
      itemLabel="#{id}" 
      itemValue="#{id}" /> 

La forma (en ámbito de sesión):

método que crea el DualListModel:

prepareForm() { 
    List<Integer> source = Lists.newLinkedList(); 
    List<Integer> target = Lists.newLinkedList(); 
    //add 100 integers as source: 
    for(int i = 0; i <= 99; i++) { 
     source.add(i); 
    } 

    DualListModel<Integer> model = new DualListModel<Integer>(source, target); 
    testForm.setDualList(model); 
} 

¿Hay som ¿Todo lo que podría hacer para hacerlo más rápido?

+0

¿Puedes publicar tu código? – fareed

+0

¿Y quiere decir que en su versión anterior de Primefaces funcionaba bien y se ralentizaba una vez que actualizaba a la nueva versión? – fareed

+0

3.3.1 no parece ser una versión de prueba con 3.3 en su lugar. O usa más viejo. –

Respuesta

1

parece ser un error en PrimeFaces-versión. He encontrado algunas otras publicaciones en el foro de las Primeras acerca de este tema.

me han puesto en marcha mi propia lista de comprobación y todo funciona bien ahora.

+0

Hola, ¿estás dispuesto a compartir tu lista de selección con la comunidad, como parche para PrimeFaces, por ejemplo? –

0

No puedo decirle el problema exacto basado en la cantidad de código que envió aquí. Pero en base a sus comentarios, puedo sugerir lo siguiente:

  • Comprobar los campos requeridos dentro de la misma forma no impiden que presentar.
  • No utilizar formas anidadas
  • Asegúrese de sus secuencias petición Ajax (actionListener, acción, onclick ... etc)
  • Asegúrese de que sus códigos están fuertemente-escritos y darle sentido. Porque a veces notará un comportamiento extraño en los componentes de las caras principales (no disparando, no actualizando) si su código está dando como resultado un error.

Con suerte, esto puede ayudarle.

+0

Actualicé la pregunta con un ejemplo muy básico (sin convertidores, solo valores enteros simples) que demuestra el problema. – Lodger

Cuestiones relacionadas