Hi,
I’m trying to integrate a some custom entities created in a service builder module with Objects Framework, following this guide and digging around the source code.
The object definition appears in “Objects” section in the portal , but when I try to create a notification template, I got an error in the log when I choose my entity from the dropdown
The same error appear if I put this lines of code in the template
${ObjectEntry_status.getData()}
${ObjectEntry_partnerId.getData()}
and try to execute the Object Action (a simple “after update” action) related to the notification.
This is the stacktrace:
2026-02-09 16:35:55.673 ERROR [][][][PortletServlet:109] Unable to process portlet com_liferay_notification_web_internal_portlet_NotificationTemplatesPortlet: java.lang.NullPointerException: Cannot invoke "com.liferay.info.item.provider.InfoItemFormProvider.getInfoForm(String, long)" because "infoItemFormProvider" is null
javax.portlet.PortletException: java.lang.NullPointerException: Cannot invoke "com.liferay.info.item.provider.InfoItemFormProvider.getInfoForm(String, long)" because "infoItemFormProvider" is null
at com.liferay.portal.kernel.portlet.bridges.mvc.BaseMVCResourceCommand.serveResource(BaseMVCResourceCommand.java:40) ~[portal-kernel.jar:?]
at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.callResourceMethod(MVCPortlet.java:453) ~[portal-kernel.jar:?]
at com.liferay.portal.kernel.portlet.LiferayPortlet.serveResource(LiferayPortlet.java:137) ~[portal-kernel.jar:?]
at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.serveResource(MVCPortlet.java:357) ~[portal-kernel.jar:?]
at com.liferay.portlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:137) ~[portal-impl.jar:?]
at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:79) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:131) ~[portal-impl.jar:?]
at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69) ~[portal-kernel.jar:?]
at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:105) ~[portal-kernel.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) ~[servlet-api.jar:4.0.FR]
at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:147) ~[?:?]
at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:63) ~[?:?]
at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:120) ~[?:?]
at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.forward(RequestDispatcherAdaptor.java:40) ~[?:?]
at com.liferay.portlet.internal.InvokerPortletImpl.invoke(InvokerPortletImpl.java:558) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.InvokerPortletImpl.invokeResource(InvokerPortletImpl.java:673) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.InvokerPortletImpl.serveResource(InvokerPortletImpl.java:486) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.PortletContainerImpl._serveResource(PortletContainerImpl.java:1055) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.PortletContainerImpl.lambda$serveResource$4(PortletContainerImpl.java:258) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.PortletContainerImpl._preserveGroupIds(PortletContainerImpl.java:402) ~[portal-impl.jar:?]
at com.liferay.portlet.internal.PortletContainerImpl.serveResource(PortletContainerImpl.java:251) ~[portal-impl.jar:?]
at com.liferay.portlet.SecurityPortletContainerWrapper.serveResource(SecurityPortletContainerWrapper.java:190) ~[portal-impl.jar:?]
at com.liferay.portlet.RestrictPortletContainerWrapper.serveResource(RestrictPortletContainerWrapper.java:141) ~[portal-impl.jar:?]
at com.liferay.portal.kernel.portlet.PortletContainerUtil.serveResource(PortletContainerUtil.java:223) ~[portal-kernel.jar:?]
at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:403) ~[portal-impl.jar:?]
at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:165) ~[portal-impl.jar:?]
at com.liferay.portal.struts.PortalRequestProcessor._process(PortalRequestProcessor.java:377) ~[portal-impl.jar:?]
at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:143) ~[portal-impl.jar:?]
The same situation happens if I choose the native “Organization” entity from the dropdown.
Is this a known bug?
