ivosturm / GoogleMapsCustomMarker

Extended functionality for the Mendix GoogleMaps widget including drag and drop, markerclustering and customization of markers
0 stars 4 forks source link

Error when database source table is non-persistent #22

Open kmn0 opened 3 years ago

kmn0 commented 3 years ago

Hi. I get the following error on my Studio 8.17.0 console when serving the page on which the widget is placed. com.mendix.core.CoreRuntimeException: Exception occurred in action '{"xpath":"//Addresses.ContributorForMap","amount":-1,"offset":-1,"returnsCount":false,"sort":[],"type":"RetrieveXPathSchemaRawAction"}', all database changes executed by this action were rolled back at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.processErrorState(CoreActionHandlerImpl.scala:151)

Caused by: com.mendix.connectionbus.ConnectionBusRuntimeException: An exception has occurred for the following request(s): InternalLimitedXPathTextGetRequest (depth = -1): //Addresses.ContributorForMap at com.mendix.connectionbus.RequestAnalyzer.doRequest(RequestAnalyzer.java:63)

Caused by: com.mendix.core.CoreRuntimeException: 'Addresses.ContributorForMap' is not a persistable entity at com.mendix.connectionbus.DomainModelUtilImpl.getPersistableMetaObject(DomainModelUtil.scala:45)

On the developer console I get the following error: Failed to load resource: the server responded with a status of 560 (560) mxui.js?637482155426395462:79 Error at new t (mxui.js?637482155426395462:39) at mxui.js?637482155426395462:34 at mxui.js?637482155426395462:20 at Object.next (mxui.js?637482155426395462:20) at a (mxui.js?637482155426395462:20) (anonymous) @ mxui.js?637482155426395462:79 :8080/xas/:1

Any advice on how to proceed is appreciated! googleMapsCustomMarker Configuration

kmn0 commented 3 years ago

In the meantime, I changed the widget configuration and added a Get Objects microflow, that returns a list of non-persistent ContributorForMap objects. This works for me. I do get this run-time warning: Request state size of 603 objects exceeds the threshold of 100 objects. Request details: type 'RequestHandlingUtilImpl$' in session '047acdff-7501-4246-af35-1fc7917bdcd3'. State consists of:

ivosturm commented 3 years ago

Hi Gerrit,

Great that you got it to work! The warning you are getting is a Mendix warning, making you aware that there are many objects (above a certain threshold) in cache. It is not related to my widget. The widget doesn’t have restrictions on the amount. If you use these amounts of markers I do think enabling marker clustering will improve performance.

For details on this Mendix generated warning: https://docs.mendix.com/refguide/custom-settings and specifically com.mendix.webui.StateSizeWarningThreshold

Kind regards, Ivo Sturm

From: Gerrit van Kammen notifications@github.com Sent: Monday, February 8, 2021 12:02 PM To: ivosturm/GoogleMapsCustomMarker GoogleMapsCustomMarker@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [ivosturm/GoogleMapsCustomMarker] Error when database source table is non-persistent (#22)

In the meantime, I changed the widget configuration and added a Get Objects microflow, that returns a list of non-persistent ContributorForMap objects. This works for me. I do get this run-time warning: Request state size of 603 objects exceeds the threshold of 100 objects. Request details: type 'RequestHandlingUtilImpl$' in session '047acdff-7501-4246-af35-1fc7917bdcd3'. State consists of:

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/ivosturm/GoogleMapsCustomMarker/issues/22#issuecomment-775061524, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADLGJWSMC3PC7RWBCUF5SBTS57AD5ANCNFSM4XGIS6HA.