Hi!
I am working with the CUBA platform for the first time. I have followed along with a couple of the tutorials and am putting together a Proof of Concept application to teach me additional things like best practices and patterns.
When I try to execute the BPM Process, I get the error (stack trace at the end of this message). Based on my research, this typically occurs when the views being used for the screens do not contain the correct attributes. In my instance, the error occurs when I select a value from the procActors dropdown on the standard process form. Interestingly, the entity (Customer) record that is being referenced is the one I am logged in as (admin). I am not sure why the admin user record is being pulled (perhaps for audits) by the framework.
The Customer entity, in my application, extends the sec$User entity and is stored in the same table. The Contacts entity contains an association to the Customer. Further, the Feedback entity contains an association relationship to the Contact entity.
My standard process form is associated with the Feedback entity as described in the tutorial. I have tried re-doing the views in the global views.xml by inheriting from the _local as well as the custom views I created (for the customer, as customer-view, and the contact as contact-view). In both cases, I included the firstName attribute from the Customer (which in effect is inherited from sec$User).
I would appreciate any guidance you can provide.
2018-07-08 03:52:37.446 ERROR [http-nio-8080-exec-10/app/adhawan@gmail.com] com.haulmont.cuba.web.log.AppLog - Exception:
java.lang.RuntimeException: Push failed
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:177) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:152) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.ui.UI.push(UI.java:1562) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinSession.unlock(VaadinSession.java:1002) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:43) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1435) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:361) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.haulmont.cuba.web.sys.CubaApplicationServlet.serviceAppRequest(CubaApplicationServlet.java:312) ~[cuba-web-6.9.2.jar:6.9.2]
at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:203) ~[cuba-web-6.9.2.jar:6.9.2]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[servlet-api.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-websocket.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107) ~[spring-web-4.3.14.RELEASE.jar:4.3.14.RELEASE]
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73) ~[spring-web-4.3.14.RELEASE.jar:4.3.14.RELEASE]
at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:107) ~[cuba-web-6.9.2.jar:6.9.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[catalina.jar:8.5.23]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) ~[catalina.jar:8.5.23]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) ~[catalina.jar:8.5.23]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) ~[catalina.jar:8.5.23]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[catalina.jar:8.5.23]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803) ~[tomcat-coyote.jar:8.5.23]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:8.5.23]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-coyote.jar:8.5.23]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459) ~[tomcat-coyote.jar:8.5.23]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:8.5.23]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_171]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_171]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:8.5.23]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_171]
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.haulmont.chile.core.model.utils.MethodsCache.invokeGetter(MethodsCache.java:74) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.impl.AbstractInstance.getValue(AbstractInstance.java:102) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.core.entity.BaseGenericIdEntity.getValue(BaseGenericIdEntity.java:139) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.utils.InstanceUtils.getInstanceName(InstanceUtils.java:235) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.impl.AbstractInstance.getInstanceName(AbstractInstance.java:59) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.web.gui.data.ItemWrapper.toString(ItemWrapper.java:166) ~[cuba-web-6.9.2.jar:6.9.2]
at com.vaadin.ui.AbstractSelect.getItemCaption(AbstractSelect.java:1237) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.ui.ComboBox.paintContent(ComboBox.java:300) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.haulmont.cuba.web.toolkit.ui.CubaComboBox.paintContent(CubaComboBox.java:127) ~[cuba-web-6.9.2.jar:6.9.2]
at com.vaadin.server.LegacyPaint.paint(LegacyPaint.java:65) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.LegacyUidlWriter.write(LegacyUidlWriter.java:82) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.UidlWriter.write(UidlWriter.java:131) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:174) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
... 36 common frames omitted
Caused by: java.lang.reflect.InvocationTargetException: null
at sun.reflect.GeneratedMethodAccessor196.invoke(Unknown Source) ~[na:na]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_171]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_171]
at com.haulmont.chile.core.model.utils.MethodsCache.invokeGetter(MethodsCache.java:72) ~[cuba-global-6.9.2.jar:6.9.2]
... 48 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot get unfetched attribute [firstName] from detached object com.non.crm.entity.Customer-f91d7683-c334-94ad-94b7-c0566e64c3ee [detached].
at org.eclipse.persistence.internal.queries.EntityFetchGroup.onUnfetchedAttribute(EntityFetchGroup.java:98) ~[eclipselink-2.6.2.cuba23.jar:2.6.2.cuba23]
at com.haulmont.cuba.core.sys.persistence.CubaEntityFetchGroup.onUnfetchedAttribute(CubaEntityFetchGroup.java:74) ~[cuba-global-6.9.2.jar:6.9.2]
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.processUnfetchedAttribute(EntityManagerImpl.java:2846) ~[eclipselink-2.6.2.cuba23.jar:2.6.2.cuba23]
at com.haulmont.chile.core.model.impl.AbstractInstance._persistence_checkFetched(AbstractInstance.java) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.security.entity.User._persistence_get_firstName(User.java) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.security.entity.User.getFirstName(User.java:186) ~[cuba-global-6.9.2.jar:6.9.2]
... 52 common frames omitted
2018-07-08 03:53:00.759 ERROR [http-nio-8080-exec-13/app/admin] com.haulmont.cuba.web.log.AppLog - Exception:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: Push failed
at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_171]
at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_171]
at com.vaadin.server.VaadinSession$FutureAccess.get(VaadinSession.java:124) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService.runPendingAccessTasks(VaadinService.java:1864) [vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinSession.unlock(VaadinSession.java:994) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService.ensureAccessQueuePurged(VaadinService.java:1824) [vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService.accessSession(VaadinService.java:1790) [vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinSession.access(VaadinSession.java:1399) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService.fireSessionDestroy(VaadinService.java:460) [vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinSession.valueUnbound(VaadinSession.java:324) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1819) ~[catalina.jar:8.5.23]
at org.apache.catalina.session.StandardSession.expire(StandardSession.java:879) ~[catalina.jar:8.5.23]
at org.apache.catalina.session.StandardSession.expire(StandardSession.java:766) ~[catalina.jar:8.5.23]
at org.apache.catalina.session.StandardSession.invalidate(StandardSession.java:1266) ~[catalina.jar:8.5.23]
at org.apache.catalina.session.StandardSessionFacade.invalidate(StandardSessionFacade.java:171) ~[catalina.jar:8.5.23]
at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:177) ~[cuba-web-6.9.2.jar:6.9.2]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[servlet-api.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-websocket.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107) ~[spring-web-4.3.14.RELEASE.jar:4.3.14.RELEASE]
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73) ~[spring-web-4.3.14.RELEASE.jar:4.3.14.RELEASE]
at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:107) ~[cuba-web-6.9.2.jar:6.9.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[catalina.jar:8.5.23]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) ~[catalina.jar:8.5.23]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) ~[catalina.jar:8.5.23]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650) ~[catalina.jar:8.5.23]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) ~[catalina.jar:8.5.23]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[catalina.jar:8.5.23]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803) ~[tomcat-coyote.jar:8.5.23]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:8.5.23]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-coyote.jar:8.5.23]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459) ~[tomcat-coyote.jar:8.5.23]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:8.5.23]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_171]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_171]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:8.5.23]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_171]
Caused by: java.lang.RuntimeException: Push failed
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:177) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:152) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.ui.UI.close(UI.java:1259) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService$1$1.run(VaadinService.java:481) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.ui.UI.accessSynchronously(UI.java:1392) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.VaadinService$1.run(VaadinService.java:471) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_171]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_171]
at com.vaadin.server.VaadinService.runPendingAccessTasks(VaadinService.java:1861) [vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
... 40 common frames omitted
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.haulmont.chile.core.model.utils.MethodsCache.invokeGetter(MethodsCache.java:74) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.impl.AbstractInstance.getValue(AbstractInstance.java:102) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.core.entity.BaseGenericIdEntity.getValue(BaseGenericIdEntity.java:139) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.utils.InstanceUtils.getInstanceName(InstanceUtils.java:235) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.chile.core.model.impl.AbstractInstance.getInstanceName(AbstractInstance.java:59) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.web.gui.data.ItemWrapper.toString(ItemWrapper.java:166) ~[cuba-web-6.9.2.jar:6.9.2]
at com.vaadin.ui.AbstractSelect.getItemCaption(AbstractSelect.java:1237) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.ui.ComboBox.paintContent(ComboBox.java:300) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.haulmont.cuba.web.toolkit.ui.CubaComboBox.paintContent(CubaComboBox.java:127) ~[cuba-web-6.9.2.jar:6.9.2]
at com.vaadin.server.LegacyPaint.paint(LegacyPaint.java:65) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.LegacyUidlWriter.write(LegacyUidlWriter.java:82) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.UidlWriter.write(UidlWriter.java:131) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
at com.vaadin.server.communication.AtmospherePushConnection.push(AtmospherePushConnection.java:174) ~[vaadin-server-7.7.13.cuba.9.jar:7.7.13.cuba.9]
... 48 common frames omitted
Caused by: java.lang.reflect.InvocationTargetException: null
at sun.reflect.GeneratedMethodAccessor196.invoke(Unknown Source) ~[na:na]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_171]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_171]
at com.haulmont.chile.core.model.utils.MethodsCache.invokeGetter(MethodsCache.java:72) ~[cuba-global-6.9.2.jar:6.9.2]
... 60 common frames omitted
Caused by: java.lang.IllegalStateException: Cannot get unfetched attribute [firstName] from detached object com.non.crm.entity.Customer-f91d7683-c334-94ad-94b7-c0566e64c3ee [detached].
at org.eclipse.persistence.internal.queries.EntityFetchGroup.onUnfetchedAttribute(EntityFetchGroup.java:98) ~[eclipselink-2.6.2.cuba23.jar:2.6.2.cuba23]
at com.haulmont.cuba.core.sys.persistence.CubaEntityFetchGroup.onUnfetchedAttribute(CubaEntityFetchGroup.java:74) ~[cuba-global-6.9.2.jar:6.9.2]
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.processUnfetchedAttribute(EntityManagerImpl.java:2846) ~[eclipselink-2.6.2.cuba23.jar:2.6.2.cuba23]
at com.haulmont.chile.core.model.impl.AbstractInstance._persistence_checkFetched(AbstractInstance.java) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.security.entity.User._persistence_get_firstName(User.java) ~[cuba-global-6.9.2.jar:6.9.2]
at com.haulmont.cuba.security.entity.User.getFirstName(User.java:186) ~[cuba-global-6.9.2.jar:6.9.2]
... 64 common frames omitted