cuba-platform / dashboard-addon Goto Github PK
View Code? Open in Web Editor NEWThis component is designed to create and embed dashboards. Dashboard consists of widgets - individual elements based on a frame.
License: Apache License 2.0
This component is designed to create and embed dashboards. Dashboard consists of widgets - individual elements based on a frame.
License: Apache License 2.0
When I open Parameter Editor (of the added Widget parameter) and change the Value type field two or more times, the editor keeps showing me one or more controls that left from the previous Value type selections.
Which is misleading.
Also, it leads to NPE sometimes.
Add spotbugs task in build.gradle
Upgrade addon to CUBA 7.2-SNAPSHOT version
Dashboard external parameters which were set via setXmlParameters
method are not availabe in widgets after manual refresh.
Platform version: 7.2.0
Addon version: 3.2.0
Minimal reproducible example
(watch the gif)
Try to remove Clock:
Update the "Installation" section of readme.md: describe how to install the component using Add-ons Marketplace
Support Helium CUBA Platform theme (https://www.cuba-platform.com/marketplace/helium/)
java.lang.ClassCastException: org.strangeway.responsive.web.components.impl.WebResponsiveRow cannot be cast to com.haulmont.addon.dashboard.web.dashboard.layouts.CanvasLayout
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.searchWidgetFrame(WebDashboardFrame.java:319)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.searchWidgetFrame(WebDashboardFrame.java:319)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.getWidget(WebDashboardFrame.java:306)
at com.haulmont.demo.dashboard.web.assistant.ClockAssistant.dashboardEventListener(ClockAssistant.java:25)
at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.dashboardEventListener(WebDashboardFrame.java:204)
at sun.reflect.GeneratedMethodAccessor164.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.doInvoke(UiEventListenerMethodAdapter.java:224)
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.processEvent(UiEventListenerMethodAdapter.java:150)
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.onApplicationEvent(UiEventListenerMethodAdapter.java:109)
at com.haulmont.cuba.gui.events.sys.UiEventsMulticasterImpl.invokeListener(UiEventsMulticasterImpl.java:73)
at com.haulmont.cuba.gui.events.sys.UiEventsMulticasterImpl.multicastEvent(UiEventsMulticasterImpl.java:66)
at com.haulmont.cuba.web.sys.WebEvents.publish(WebEvents.java:31)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.lambda$initTimer$1(WebDashboardFrame.java:179)
at com.haulmont.cuba.web.gui.WebTimer$CubaTimerActionListenerWrapper.timerAction(WebTimer.java:138)
at com.haulmont.cuba.web.widgets.CubaTimer.onTimer(CubaTimer.java:105)
at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:153)
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:115)
at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:431)
at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:396)
at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:260)
at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:82)
at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40)
at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1577)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:425)
at com.haulmont.cuba.web.sys.CubaApplicationServlet.serviceAppRequest(CubaApplicationServlet.java:329)
at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:215)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107)
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73)
at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Create information about Software Components file
https://doc.cuba-platform.com/manual-7.2/credits.html
Addon parameter's editor doesn't load any project-specific Enum classes into Enum Class field, when I define the Value type == ENUM
It loads only Enum classes that are defined in CUBA framework itself and not showing enums defined in my project, also it shows only one enum (SizeUnit) of the two that are defined in the addon.
add new method refresh(Map<String,Object> params)
to DashboardFrame
which will allow to override default dashboard parameters
fix incorrect entity parameter creation for dashboard parameters and widgets
https://www.cuba-platform.ru/discuss/t/poluchit-dashboard-iz-ekrana-dashboardview/3866/5
We need to update addon's documentation for how to load dashboards described by json file that could be exported from dashboard editor.
AR: exception
Caused by: java.lang.IllegalArgumentException: Invalid UUID string: 2
at java.util.UUID.fromString(UUID.java:194) ~[na:1.8.0_265]
at com.haulmont.addon.dashboard.web.parametertransformer.ParameterTransformerImpl.loadEntity(ParameterTransformerImpl.java:76) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.parametertransformer.ParameterTransformerImpl.transform(ParameterTransformerImpl.java:60) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.repository.WidgetRepositoryImpl.getWidgetParams(WidgetRepositoryImpl.java:149) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.tools.componentfactory.CanvasUiComponentsFactory.createCanvasWidgetLayout(CanvasUiComponentsFactory.java:120) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.tools.componentfactory.CanvasDropComponentsFactory.createCanvasWidgetLayout(CanvasDropComponentsFactory.java:131) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.tools.DashboardModelConverter.modelToContainer(DashboardModelConverter.java:64) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.tools.DashboardModelConverter.initChilds(DashboardModelConverter.java:113) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.tools.DashboardModelConverter.modelToContainer(DashboardModelConverter.java:52) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.frames.editor.canvas.CanvasFrame.updateLayout(CanvasFrame.java:84) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.frames.editor.canvas.CanvasEditorFrame.updateLayout(CanvasEditorFrame.java:60) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.addon.dashboard.web.dashboard.frames.editor.canvas.CanvasEditorFrame.onLayoutRefreshedEvent(CanvasEditorFrame.java:95) ~[dashboard-web-3.2.0.BETA1.jar:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_265]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_265]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_265]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_265]
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.doInvoke(UiEventListenerMethodAdapter.java:226) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.processEvent(UiEventListenerMethodAdapter.java:151) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.events.sys.UiEventListenerMethodAdapter.onApplicationEvent(UiEventListenerMethodAdapter.java:110) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.events.sys.UiEventsMulticasterImpl.invokeListener(UiEventsMulticasterImpl.java:74) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.events.sys.UiEventsMulticasterImpl.multicastEvent(UiEventsMulticasterImpl.java:67) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.web.sys.WebEvents.publish(WebEvents.java:31) ~[cuba-web-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.addon.dashboard.web.dashboard.frames.editor.DashboardEdit.lambda$onOpenWidgetEditor$9(DashboardEdit.java:415) ~[dashboard-web-3.2.0.BETA1.jar:na]
at com.haulmont.bali.events.EventHub.publish(EventHub.java:170) ~[cuba-global-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.screen.Screen.fireEvent(Screen.java:128) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.screen.Screen.close(Screen.java:343) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.components.AbstractEditor.closeWithCommit(AbstractEditor.java:432) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.components.AbstractEditor.commitAndClose(AbstractEditor.java:446) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.components.AbstractEditor.lambda$initCommitActions$1(AbstractEditor.java:104) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.bali.events.EventHub.publish(EventHub.java:170) ~[cuba-global-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.gui.components.actions.BaseAction.actionPerform(BaseAction.java:224) ~[cuba-gui-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.web.gui.components.WebButton.buttonClicked(WebButton.java:67) ~[cuba-web-7.2.0.BETA1.jar:7.2.0.BETA1]
at com.haulmont.cuba.web.widgets.CubaButton.fireClick(CubaButton.java:76) ~[cuba-web-widgets-7.2.0.BETA1.jar:na]
at com.vaadin.ui.Button$1.click(Button.java:57) ~[vaadin-server-8.9.2-0-cuba.jar:8.9.2-0-cuba]
... 43 common frames omitted
ER: entities with any PK type should be supported
Forum topic: https://www.cuba-platform.ru/discuss/t/dashboard-i-entity-s-id-tipa-long/5078
Add new option for dashboard frame to prevent automatic dashboard initialization on parent window InitEvent
Feature request.
Despite documentation says that in CUBA 7 we can extend ScreenFragment
to make a widget. If we do that the widget won't be detected by the addon unless in xml file we specify a link to the controller class (it's legacy behaviour that CUBA 7).
So unless you added class
attribute that points to the controller class manually, your dashboard widget will not be accessible in the dashboard editor screen
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<fragment xmlns="http://schemas.haulmont.com/cuba/screen/fragment.xsd"
class="com.haulmont.sample.petclinic.web.dashboards.ClientsDashboard">
<layout>
<label value="LOL!"/>
</layout>
</fragment>
CanvasUiComponentsFactory
is a singleton bean and it must not inject AppUI
bean. AppUI
is a vaadin
scoped bean and should be injected only to prototype
scoped beans and UI screens.
See also https://www.cuba-platform.com/discuss/t/the-right-way-to-extend-appui/9322/4
Delete groovy dependency from add-on
https://www.cuba-platform.com/discuss/t/problem-with-groovy-version-in-dashboard-addon/11829
When adding a refreshable widget (those that implements RefreshableWidget
interface). It doesn't update (on view dashboard screen). And throws
IllegalStateException: Can't find component class for 'timer'
Steps to reproduce:
RefreshableWidget
refresh
methodNote: the same application works just fine when downgrade CUBA to 7.0.x version.
Exception stacktrace:
java.lang.IllegalStateException: Can't find component class for 'timer'
at com.haulmont.cuba.web.gui.WebUiComponents.create(WebUiComponents.java:163)
at com.haulmont.cuba.web.gui.WebUiComponents.create(WebUiComponents.java:199)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.initTimer(WebDashboardFrame.java:217)
at com.haulmont.addon.dashboard.web.dashboard.frames.uicomponent.WebDashboardFrame.init(WebDashboardFrame.java:133)
at com.haulmont.cuba.gui.components.AbstractFrame.init(AbstractFrame.java:103)
at com.haulmont.bali.events.EventHub.publish(EventHub.java:170)
at com.haulmont.cuba.gui.screen.ScreenFragment.fireEvent(ScreenFragment.java:85)
at com.haulmont.cuba.gui.screen.UiControllerUtils.fireEvent(UiControllerUtils.java:62)
at com.haulmont.cuba.gui.sys.FragmentHelper$FragmentLoaderInitTask.execute(FragmentHelper.java:220)
at com.haulmont.cuba.gui.xml.layout.loaders.ComponentLoaderContext.executeInitTasks(ComponentLoaderContext.java:178)
at com.haulmont.cuba.web.sys.WebFragments.init(WebFragments.java:214)
at com.haulmont.cuba.gui.screen.ScreenFragment.init(ScreenFragment.java:177)
at com.haulmont.addon.dashboard.web.dashboard.frames.view.DashboardView.init(DashboardView.java:44)
at com.haulmont.cuba.gui.components.AbstractWindow.init(AbstractWindow.java:99)
at com.haulmont.bali.events.EventHub.publish(EventHub.java:170)
at com.haulmont.cuba.gui.screen.Screen.fireEvent(Screen.java:128)
at com.haulmont.cuba.gui.screen.UiControllerUtils.fireEvent(UiControllerUtils.java:60)
at com.haulmont.cuba.web.sys.WebScreens.createScreen(WebScreens.java:253)
at com.haulmont.cuba.web.sys.WebScreens.create(WebScreens.java:163)
at com.haulmont.addon.dashboard.web.dashboard.frames.browse.PersistentDashboardBrowse.viewDashboard(PersistentDashboardBrowse.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.haulmont.cuba.gui.xml.DeclarativeAction.actionPerform(DeclarativeAction.java:101)
at com.haulmont.cuba.web.gui.components.WebButton.buttonClicked(WebButton.java:64)
at com.haulmont.cuba.web.widgets.CubaButton.fireClick(CubaButton.java:76)
at com.vaadin.ui.Button$1.click(Button.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:153)
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:115)
at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:431)
at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:396)
at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:260)
at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:82)
at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40)
at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1577)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:425)
at com.haulmont.cuba.web.sys.CubaApplicationServlet.serviceAppRequest(CubaApplicationServlet.java:329)
at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:215)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107)
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73)
at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:93)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Upgrade add-on to CUBA 7.1 platform version.
Snapshot add-on version should be updated to 3.2.
Current releases/cuba_7.0
branch should be merged from the master. Create this branch if it does not exist.
Add value alias for a name in @DashboardWidget
annotation
In Widget's Parameter Editor it's not possible to set view to _local
, _base
or _minimal
for ENTITY type values.
Manual inpot of these views doesn't help as well.
Boolean value of widget param always passed as false. Dashboard param passed normally.
Okey, looks like widget params do not passed at all.
7.04 run error
11:59:18.034 ERROR c.h.c.c.s.AbstractWebAppContextLoader - Error initializing application
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘dashboard_uiComponentsFactory’: Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.haulmont.addon.dashboard.web.dashboard.tools.componentfactory.CanvasUiComponentsFactory] from ClassLoader [ParallelWebappClassLoader
context: lims
delegate: false
----------> Parent Classloader:
java.net.URLClassLoader@7fc4780b
]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:265) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1269) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1184) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:515) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda$21/316935832.getObject(Unknown Source) ~[na:na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:849) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:877) ~[spring-context-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) ~[spring-context-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:144) ~[spring-context-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:95) ~[spring-context-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext.(CubaClassPathXmlApplicationContext.java:27) ~[cuba-global-7.0.4.jar:7.0.4]
at com.haulmont.cuba.core.sys.AbstractAppContextLoader.createApplicationContext(AbstractAppContextLoader.java:90) ~[cuba-global-7.0.4.jar:7.0.4]
at com.haulmont.cuba.core.sys.AbstractAppContextLoader.initAppContext(AbstractAppContextLoader.java:62) ~[cuba-global-7.0.4.jar:7.0.4]
at com.haulmont.cuba.core.sys.AbstractWebAppContextLoader.contextInitialized(AbstractWebAppContextLoader.java:78) ~[cuba-global-7.0.4.jar:7.0.4]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4663) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5131) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) [catalina.jar:9.0.14]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:713) [catalina.jar:9.0.14]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695) [catalina.jar:9.0.14]
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133) [catalina.jar:9.0.14]
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1868) [catalina.jar:9.0.14]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_45]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) [tomcat-util.jar:9.0.14]
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112) [na:1.8.0_45]
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1045) [catalina.jar:9.0.14]
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429) [catalina.jar:9.0.14]
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1577) [catalina.jar:9.0.14]
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:424) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:367) [catalina.jar:9.0.14]
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:934) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:831) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) [catalina.jar:9.0.14]
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1382) [catalina.jar:9.0.14]
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1372) [catalina.jar:9.0.14]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_45]
at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) [tomcat-util.jar:9.0.14]
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) [na:1.8.0_45]
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:907) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:423) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) [catalina.jar:9.0.14]
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:933) [catalina.jar:9.0.14]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) [catalina.jar:9.0.14]
at org.apache.catalina.startup.Catalina.start(Catalina.java:637) [catalina.jar:9.0.14]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_45]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_45]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_45]
at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45]
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350) [bootstrap.jar:9.0.14]
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492) [bootstrap.jar:9.0.14]
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.haulmont.addon.dashboard.web.dashboard.tools.componentfactory.CanvasUiComponentsFactory] from ClassLoader [ParallelWebappClassLoader
context: lims
delegate: false
----------> Parent Classloader:
java.net.URLClassLoader@7fc4780b
]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:507) ~[spring-core-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:404) ~[spring-core-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:389) ~[spring-core-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:248) ~[spring-beans-5.1.6.RELEASE.jar:5.1.6.RELEASE]
… 59 common frames omitted
Caused by: java.lang.NoClassDefFoundError: com/haulmont/cuba/gui/components/Component$Container
at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45]
at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45]
at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2388) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:850) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1312) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1173) ~[catalina.jar:9.0.14]
at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45]
at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45]
at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2388) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:850) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1312) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1173) ~[catalina.jar:9.0.14]
at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_45]
at java.lang.ClassLoader.defineClass(ClassLoader.java:760) ~[na:1.8.0_45]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[na:1.8.0_45]
at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2388) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:850) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1312) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1173) ~[catalina.jar:9.0.14]
at java.lang.Class.getDeclaredMethods0(Native Method) ~[na:1.8.0_45]
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) ~[na:1.8.0_45]
at java.lang.Class.getDeclaredMethods(Class.java:1975) ~[na:1.8.0_45]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:489) ~[spring-core-5.1.6.RELEASE.jar:5.1.6.RELEASE]
… 62 common frames omitted
Caused by: java.lang.ClassNotFoundException: com.haulmont.cuba.gui.components.Component$Container
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1343) ~[catalina.jar:9.0.14]
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1173) ~[catalina.jar:9.0.14]
… 87 common frames omitted
Steps to replicate the issue:
Create predefined system roles
Can't pass a parameter to widget from XML screen descriptor.
Assume we have a dashboard with code main-dashboard
and when creates it at some screen, we also want to pass some parameter to the dashboard using declarative style:
<dashboard:dashboard id="mainDashboard"
code="main-dashboard"
timerDelay="60"
width="100%">
<dashboard:parameter name="font-size" value="huge"/>
</dashboard:dashboard>
In this case I get an NPE exception. In my case it happen right after logon, since the dashboard was at main screen, btw my main screen was a legacy window (extended AbstractMainWindow
).
On the other hand, when I create the parameter with exactly same name and value in the main-screen editor (dashboards editor screen). Everything works just fine.
The stacktrace:
17:21:29.933 INFO c.h.cuba.gui.config.WindowConfig - WindowConfig initialized in 77 ms
17:21:32.785 INFO c.h.c.s.a.AuthenticationManagerBean - Logged in: 1e35a7d6-c83d-62f5-b065-38f7011b4077 [admin]
17:21:33.068 WARN c.h.c.w.a.loginwindow.AppLoginWindow - Unable to login
java.lang.NullPointerException: null
at com.haulmont.addon.dashboard.gui.components.loaders.DashboardFrameLoader.createParameterValue(DashboardFrameLoader.java:251) ~[dashboard-gui-3.0.4.jar:na]
at com.haulmont.addon.dashboard.gui.components.loaders.DashboardFrameLoader.createParameter(DashboardFrameLoader.java:246) ~[dashboard-gui-3.0.4.jar:na]
at com.haulmont.addon.dashboard.gui.components.loaders.DashboardFrameLoader.lambda$loadParams$1(DashboardFrameLoader.java:232) ~[dashboard-gui-3.0.4.jar:na]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[na:1.8.0_161]
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[na:1.8.0_161]
at java.util.Iterator.forEachRemaining(Iterator.java:116) ~[na:1.8.0_161]
at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[na:1.8.0_161]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[na:1.8.0_161]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[na:1.8.0_161]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[na:1.8.0_161]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:1.8.0_161]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[na:1.8.0_161]
at com.haulmont.addon.dashboard.gui.components.loaders.DashboardFrameLoader.loadParams(DashboardFrameLoader.java:233) ~[dashboard-gui-3.0.4.jar:na]
at com.haulmont.addon.dashboard.gui.components.loaders.DashboardFrameLoader.loadComponent(DashboardFrameLoader.java:161) ~[dashboard-gui-3.0.4.jar:na]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponents(ContainerLoader.java:37) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponentsAndExpand(ContainerLoader.java:88) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.AbstractBoxLoader.loadComponent(AbstractBoxLoader.java:47) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponents(ContainerLoader.java:37) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponentsAndExpand(ContainerLoader.java:88) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.AbstractBoxLoader.loadComponent(AbstractBoxLoader.java:47) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.AppWorkAreaLoader.loadComponent(AppWorkAreaLoader.java:57) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponents(ContainerLoader.java:37) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponentsAndExpand(ContainerLoader.java:88) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.AbstractBoxLoader.loadComponent(AbstractBoxLoader.java:47) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponents(ContainerLoader.java:37) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.ContainerLoader.loadSubComponentsAndExpand(ContainerLoader.java:88) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.xml.layout.loaders.WindowLoader.loadComponent(WindowLoader.java:99) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.sys.WebScreens.loadWindowFromXml(WebScreens.java:358) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.sys.WebScreens.createScreen(WebScreens.java:231) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.sys.WebScreens.create(WebScreens.java:175) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.gui.Screens.create(Screens.java:70) ~[cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.App.createTopLevelWindow(App.java:296) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.DefaultApp.initializeUi(DefaultApp.java:173) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.DefaultApp.connectionStateChanged(DefaultApp.java:87) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.bali.events.EventHub.publish(EventHub.java:170) ~[cuba-global-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.security.ConnectionImpl.fireStateChangeListeners(ConnectionImpl.java:228) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.security.ConnectionImpl.login(ConnectionImpl.java:106) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.app.loginwindow.AppLoginWindow.doLogin(AppLoginWindow.java:349) [cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.app.loginwindow.AppLoginWindow.doLogin(AppLoginWindow.java:318) [cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.app.loginwindow.AppLoginWindow.login(AppLoginWindow.java:264) [cuba-web-7.0.10.jar:7.0.10]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_161]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_161]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_161]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_161]
at com.haulmont.cuba.gui.xml.DeclarativeAction.actionPerform(DeclarativeAction.java:96) [cuba-gui-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.gui.components.WebButton.buttonClicked(WebButton.java:64) [cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.widgets.CubaButton.fireClick(CubaButton.java:76) ~[cuba-web-widgets-7.0.10.jar:na]
at com.vaadin.ui.Button$1.click(Button.java:57) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_161]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_161]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_161]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_161]
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:153) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:115) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:431) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:396) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:260) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:82) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1577) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:425) ~[vaadin-server-8.6.4-17-cuba.jar:8.6.4-17-cuba]
at com.haulmont.cuba.web.sys.CubaApplicationServlet.serviceAppRequest(CubaApplicationServlet.java:329) ~[cuba-web-7.0.10.jar:7.0.10]
at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:215) ~[cuba-web-7.0.10.jar:7.0.10]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) ~[servlet-api.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:9.0.14]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-websocket.jar:9.0.14]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:9.0.14]
at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107) ~[spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73) ~[spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:108) ~[cuba-web-7.0.10.jar:7.0.10]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[catalina.jar:9.0.14]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) ~[catalina.jar:9.0.14]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[catalina.jar:9.0.14]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668) ~[catalina.jar:9.0.14]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[catalina.jar:9.0.14]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[catalina.jar:9.0.14]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) ~[tomcat-coyote.jar:9.0.14]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:9.0.14]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834) ~[tomcat-coyote.jar:9.0.14]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417) ~[tomcat-coyote.jar:9.0.14]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:9.0.14]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_161]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_161]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:9.0.14]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_161]
Is it possible to use addon with new screens api or I have to use legasy one?
Usage of message packs for @DasghboardWidget is not documented. It's not clear can they be used or not, and how.
In fact, dashboard addon able to use only global message packs and requires dashboard-widget
prefix for these messages.
External parameters from setXmlParameters not override Dashboard parameters
Screen parameters from DashboardView window should be passed to the Dashboard
Add MS SQL, Oracle, MySQL database scripts
Hi,
Can this addon supports CUBA 7.0 ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.