Ask Questions and Find Answers
Important:
Ask is now read-only. You can review any existing questions and answers, but not add anything new.
But - don't panic! While ask is no more, we've replaced it with discuss - the new Liferay Discussion Forum! Read more here here or just visit the site here:
discuss.liferay.com
RE: Error añadiendo nuevos registros en listas de datos dinámicos
Hola buenos días,he estado desarollando una página web que funciona a la perfección en el entorno de desarrollo. Una de sus funcionalidades más importantes se realiza mediante un portlet, que visualiza los registros de las listas de datos dinámicos.
Después, exporté todo el sitio web hacia el entorno de producción que además incorpora staging. En este entorno, todo funciona correctamente con la excepción de que no me permite añadir nuevos registros en listas de datos dinámicos. Es algo muy curioso porque se visualizan los datos correctamente y las listas se han migrado tal y como deberían migrarse. Cuando accedo a la lista a la que quiero añadir nuevos registros me aparece la opción de añadirlos, pero cuando hago click en el botón azul de arriba a la derecha me aparece la opción de añadir un registro sin ningún campo.
He estado revisando las deficiones de datos y etc y no parece que haya nada diferente respecto al entorno de desarrollo.
De todas formas, adjunto los logs del servidor, en el cual cabe recalcar que aparece un nullpointer excepction cuando selecciono la opción de añadir un nuevo registro:
2020-05-18 08:03:28.756 ERROR [http-nio-8080-exec-45][IncludeTag:128] Current URL -- generates exception: com.liferay.portal.kernel.exception.PortalException: java.lang.NullPointerException
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.getFreeMarkerContext(DDMFormFieldFreeMarkerRenderer.java:520)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.getFieldHTML(DDMFormFieldFreeMarkerRenderer.java:292)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.render(DDMFormFieldFreeMarkerRenderer.java:114)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormRendererImpl.render(DDMFormRendererImpl.java:59)
at com.liferay.dynamic.data.mapping.render.DDMFormRendererUtil.render(DDMFormRendererUtil.java:37)
at org.apache.jsp.html.start_jsp._jspService(start_jsp.java:411)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:345)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:356)
at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62)
at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:118)
at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:48)
at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:67)
at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
Después, exporté todo el sitio web hacia el entorno de producción que además incorpora staging. En este entorno, todo funciona correctamente con la excepción de que no me permite añadir nuevos registros en listas de datos dinámicos. Es algo muy curioso porque se visualizan los datos correctamente y las listas se han migrado tal y como deberían migrarse. Cuando accedo a la lista a la que quiero añadir nuevos registros me aparece la opción de añadirlos, pero cuando hago click en el botón azul de arriba a la derecha me aparece la opción de añadir un registro sin ningún campo.
He estado revisando las deficiones de datos y etc y no parece que haya nada diferente respecto al entorno de desarrollo.
De todas formas, adjunto los logs del servidor, en el cual cabe recalcar que aparece un nullpointer excepction cuando selecciono la opción de añadir un nuevo registro:
2020-05-18 08:03:28.756 ERROR [http-nio-8080-exec-45][IncludeTag:128] Current URL -- generates exception: com.liferay.portal.kernel.exception.PortalException: java.lang.NullPointerException
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.getFreeMarkerContext(DDMFormFieldFreeMarkerRenderer.java:520)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.getFieldHTML(DDMFormFieldFreeMarkerRenderer.java:292)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormFieldFreeMarkerRenderer.render(DDMFormFieldFreeMarkerRenderer.java:114)
at com.liferay.dynamic.data.mapping.internal.render.DDMFormRendererImpl.render(DDMFormRendererImpl.java:59)
at com.liferay.dynamic.data.mapping.render.DDMFormRendererUtil.render(DDMFormRendererUtil.java:37)
at org.apache.jsp.html.start_jsp._jspService(start_jsp.java:411)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:345)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:356)
at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62)
at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:118)
at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:48)
at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:67)
at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
Hola Alberto, ¿qué versión de Liferay estás usando?
Hola que tal? 7.1 GA es la versión de Liferay que utilizo.
Hola Alberto, viendo el código implicado en esa línea lo único que puede ser nulo es la variable editor y esa variable se calcula aqui
Apuntaría a que los componentes de editores no están bien registrados en ese entorno.
En tu entorno local, ¿si activas Staging no reproduces este error no?
Apuntaría a que los componentes de editores no están bien registrados en ese entorno.
En tu entorno local, ¿si activas Staging no reproduces este error no?
Buenos días,en el entorno previo al entorno donde aparece el error no tengo staging y la inserción de registros funciona correctamente.
Adjunto una captura de pantalla de como se visualiza a la hora de intentar añadir un nuevo registro.De todas formas, como puede ser que los componentes de los editores no estén bien registrados? No los he tocado durante la exportación, puede que sea un error interno de Liferay? Muchas gracias por tu atención
Adjunto una captura de pantalla de como se visualiza a la hora de intentar añadir un nuevo registro.De todas formas, como puede ser que los componentes de los editores no estén bien registrados? No los he tocado durante la exportación, puede que sea un error interno de Liferay? Muchas gracias por tu atención
Attachments:
Disculpame Sergio,parece ser que un compañero modifico el archivo portal-ext.properties en el servidor para modificar el componente y lo dejó tal y como muestra la siguiente captura.
Attachments:
Ok, pinta que puede ser por el cambio de configuración.
Si incluyes esa configuración en un entorno previo a Producción, ¿puedes reproducir el mismo error?
Si incluyes esa configuración en un entorno previo a Producción, ¿puedes reproducir el mismo error?
He estado revisando el archivo que te mandé y he cambiado un par de cosillas y ahora si me permite la edicción y la inserción de registros en listas de datos dinámicos. Muchas gracias de verdad, estaba desquiciado sin saber donde poder empezar a corregirlo. Gracias
Me alegro Alberto.
Ten en cuenta que, Liferay Portal es open-source y eso ayuda a depurar cualquier problema o entender por qué puede fallar revisando el código afectado en un excepción.
Para el próximo fallo, mirate un poco el código fuente en GitHub para ver la causa del error.En GitHub puedes dar al botón "Blame" también para rastrear el código de cambio (LPS-*) que introdujo ese código.Saludos
Ten en cuenta que, Liferay Portal es open-source y eso ayuda a depurar cualquier problema o entender por qué puede fallar revisando el código afectado en un excepción.
Para el próximo fallo, mirate un poco el código fuente en GitHub para ver la causa del error.En GitHub puedes dar al botón "Blame" también para rastrear el código de cambio (LPS-*) que introdujo ese código.Saludos
Copyright © 2025 Liferay, Inc
• Privacy Policy
Powered by Liferay™