org/sablo/specification/WebLayoutSpecification

Hello

When load my application in smart client, load the logins module correctly, but when load main solution, this error appears.
In NG client works perfectly.
In developer works fine both, NG and smart client
No there are nothing on server log

I use Servoy 2019.6.0.3502

Java Web Start 11.201.2.09 amd64
Using JRE version 1.8.0_201-b09 Java HotSpot(TM) 64-Bit Server VM
User home directory = C:\Users\Administrator
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
CacheEntry[http://localhost:8080/zylux/servoy-client/servoy_client.jnlp]: updateAvailable=true,lastModified=Tue Jul 16 17:34:08 BST 2019,length=-1
CacheEntry[http://localhost:8080/zylux/servoy_messages?lastmodified=-1&language=en_US]: updateAvailable=true,lastModified=Tue Jul 16 17:33:26 BST 2019,length=-1
success 1
logeado
Exception in thread "pool-49-thread-1" java.lang.NoClassDefFoundError: org/sablo/specification/WebLayoutSpecification
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
	at java.lang.Class.getDeclaredMethod(Unknown Source)
	at java.io.ObjectStreamClass.getPrivateMethod(Unknown Source)
	at java.io.ObjectStreamClass.access$1700(Unknown Source)
	at java.io.ObjectStreamClass$3.run(Unknown Source)
	at java.io.ObjectStreamClass$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.io.ObjectStreamClass.<init>(Unknown Source)
	at java.io.ObjectStreamClass.lookup(Unknown Source)
	at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
	at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
	at java.io.ObjectInputStream.readClassDesc(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.HashMap.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.ArrayList.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.ArrayList.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.ArrayList.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.ArrayList.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at java.util.ArrayList.readObject(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.io.ObjectInputStream.readObject(Unknown Source)
	at sun.rmi.server.UnicastRef.unmarshalValue(Unknown Source)
	at sun.rmi.server.UnicastRef.invoke(Unknown Source)
	at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source)
	at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source)
	at com.sun.proxy.$Proxy15.getActiveRootObject(Unknown Source)
	at com.servoy.j2db.ClientRepository.getActiveRootObject(ClientRepository.java:141)
	at com.servoy.j2db.AbstractActiveSolutionHandler.loadSolution(AbstractActiveSolutionHandler.java:67)
	at com.servoy.j2db.server.shared.RemoteActiveSolutionHandler.access$1(RemoteActiveSolutionHandler.java:1)
	at com.servoy.j2db.server.shared.RemoteActiveSolutionHandler$1.run(RemoteActiveSolutionHandler.java:90)
	at com.servoy.j2db.util.UIUtils$1.run(UIUtils.java:161)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.sablo.specification.WebLayoutSpecification
	at java.net.URLClassLoader.findClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	... 127 more
Jul 16, 2019 5:37:44 PM com.servoy.j2db.util.Debug error
SEVERE: Throwable
java.lang.NullPointerException
	at com.servoy.j2db.PersistIndexCache.getPersistIndex(PersistIndexCache.java:45)
	at com.servoy.j2db.FlattenedSolution.createPersistIndex(FlattenedSolution.java:773)
	at com.servoy.j2db.FlattenedSolution.setSolutionAndModules(FlattenedSolution.java:754)
	at com.servoy.j2db.FlattenedSolution.setSolution(FlattenedSolution.java:679)
	at com.servoy.j2db.ClientState.loadSolutionsAndModules(ClientState.java:1458)
	at com.servoy.j2db.smart.J2DBClient.loadSolutionsAndModules(J2DBClient.java:2033)
	at com.servoy.j2db.smart.J2DBClient$16.run(J2DBClient.java:1981)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Jul 16, 2019 5:37:44 PM com.servoy.j2db.util.Debug error
SEVERE: Cannot load solution zylux
java.lang.NullPointerException
	at com.servoy.j2db.PersistIndexCache.getPersistIndex(PersistIndexCache.java:45)
	at com.servoy.j2db.FlattenedSolution.createPersistIndex(FlattenedSolution.java:773)
	at com.servoy.j2db.FlattenedSolution.setSolutionAndModules(FlattenedSolution.java:754)
	at com.servoy.j2db.FlattenedSolution.setSolution(FlattenedSolution.java:679)
	at com.servoy.j2db.ClientState.loadSolutionsAndModules(ClientState.java:1458)
	at com.servoy.j2db.smart.J2DBClient.loadSolutionsAndModules(J2DBClient.java:2033)
	at com.servoy.j2db.smart.J2DBClient$16.run(J2DBClient.java:1981)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Hello

Any Idea???

The application works fine in NG client and web cliente on the server.
Developer work fine all, NG client, web client and smart client.
In the same server, If create .servoy with the Servoy 8.3.3 version, works fine, but when create .servoy with Servoy 2019.6.0.3502, the smart client solution don´t load. “Cannot load
solution”.

Thanks

Juan,

It seems your smart client solution is using some ng (which is based on sablo) stuff.
Sablo is not available in the smart client, this causes the class loading exception.

If you create a case in the Servoy support system with the solution attached we can see what it is.

As a workaround, adding the sablo jar from the /path/to/servoy/developer/plugins directory to /path/to/servoy/application_server/plugins and adding that to a jnlp file could fix this.

Rob

Hello

I have done what you say and the error continues.

I delete all my developer instalation, download all again, checkout my solution from the old versión 8.3.3., create again the war file, upload to my server 2019.6.1 release 3503 and all works fine again.

I have been working for 2 days and making changes as always and suddenly today it gives the same mistake again.

I have not put any webcomponent in a smart form, I’m sure.

I have been working with Ng for a long time and this has never happened to me.

It has to be something from this new versión.

Thanks

JuanMartin:
I have done what you say and the error continues.

Can you show the jnlp-file you modified/created? maybe something wrong there.

Rob

This is it:

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8080/zylux/" href="servoy-client/servoy_client.jnlp">
   <information> 
      <title>Servoy Client</title>
      <vendor>Servoy</vendor>
      <homepage href="http://www.servoy.com/"/>
      <description>Database client</description>
      <icon href="lib/images/servoy_client_icon.png" />
      <icon kind="splash" href="lib/splashclient.png" width="64" height="64"/>
   	<shortcut online="true">
   	<desktop/>
   	</shortcut>
   </information>
   <resources>
      <j2se version="1.8"   java-vm-args="-XX:SoftRefLRUPolicyMSPerMB=3600000" />
      <jar href="lib/j2db.jar" main="true" version="1563731744000" download="eager"/>
      <jar href="lib/js.jar" version="1563731744000" download="eager"/>
      <jar href="lib/jabsorb.jar" version="1563731744000" download="eager"/>
      <jar href="lib/BrowserLauncher2.jar" version="1563731744000" download="eager"/>
      <jar href="lib/commons-codec.jar" version="1563731744000" download="eager"/>
      <jar href="lib/MRJAdapter.jar" version="1563731744000" download="eager"/>
      <jar href="lib/slf4j-api.jar" version="1563731744000" download="eager"/>
      <jar href="lib/slf4j-jdk14.jar" version="1563731744000" download="eager"/>
      <jar href="lib/l2fprod-common-outlookbar.jar" version="1563731744000" download="eager"/>
      <jar href="lib/fs-parser.jar" version="1563731744000" download="eager"/>
      <jar href="lib/fs-commons.jar" version="1563731744000" download="eager"/>
      <jar href="lib/PBKDF2.jar" version="1563731744000" download="eager"/>
      <jar href="lib/xstream.jar" version="1563731744000" download="eager"/>
      <jar href="lib/prompt.jar" version="1563731744000" download="eager"/>
      <jar href="lib/joda-time.jar" version="1563731744000" download="eager"/>
      <jar href="lib/networktnl.jar" version="1563731744000" download="eager"/>
      <jar href="lib/rmitnl.jar" version="1563731744000" download="eager"/>
      <jar href="lib/commons-codec.jar" version="1563731744000" download="eager"/>
      <jar href="lib/jcifs.jar" version="1563731744000" download="eager"/>
      <jar href="lib/httpclient.jar" version="1563731744000" download="eager"/>
      <jar href="lib/httpcore.jar" version="1563731744000" download="eager"/>
      <extension name="beans_IClock.jar" href="servoy-client/beans/IClock.jar.jnlp" version="1563731219206"/>
      <extension name="beans_jfxpanel.jar" href="servoy-client/beans/jfxpanel.jar.jnlp" version="1563731219986"/>
      <extension name="beans_dbtreeview.jar" href="servoy-client/beans/dbtreeview.jar.jnlp" version="1563731218838"/>
      <extension name="beans_datagrid.jar" href="servoy-client/beans/datagrid.jar.jnlp" version="1563731218171"/>
      <extension name="beans_s11_chart.jar" href="servoy-client/beans/s11_chart.jar.jnlp" version="1563731220417"/>
      <extension name="beans_molecule.jar" href="servoy-client/beans/molecule.jar.jnlp" version="1563731220146"/>
      <extension name="beans_htmlbean.jar" href="servoy-client/beans/htmlbean.jar.jnlp" version="1563731218989"/>
      <extension name="beans_inmethod-grid.jar" href="servoy-client/beans/inmethod-grid.jar.jnlp" version="1563731219807"/>
      <extension name="beans_swingbeans.jar" href="servoy-client/beans/swingbeans.jar.jnlp" version="1563731220565"/>
      <extension name="plugin_mail.jar" href="servoy-client/plugins/mail.jar.jnlp" version="1563731373113"/>
      <extension name="plugin_xmlreader.jar" href="servoy-client/plugins/xmlreader.jar.jnlp" version="1563731490228"/>
      <extension name="plugin_tabxport.jar" href="servoy-client/plugins/tabxport.jar.jnlp" version="1563731471214"/>
      <extension name="plugin_clieAfirmaEtec.jar" href="servoy-client/plugins/clieAfirmaEtec.jar.jnlp" version="68804196414000"/>
      <extension name="plugin_oauth.jar" href="servoy-client/plugins/oauth.jar.jnlp" version="1563731374716"/>
      <extension name="plugin_servoy_jasperreports.jar" href="servoy-client/plugins/servoy_jasperreports.jar.jnlp" version="25019707812000"/>
      <extension name="plugin_rest_ws.jar" href="servoy-client/plugins/rest_ws.jar.jnlp" version="1563731387539"/>
      <extension name="plugin_spellcheck.jar" href="servoy-client/plugins/spellcheck.jar.jnlp" version="1563731470949"/>
      <extension name="plugin_default_validators.jar" href="servoy-client/plugins/default_validators.jar.jnlp" version="1563731349043"/>
      <extension name="plugin_pdf_output.jar" href="servoy-client/plugins/pdf_output.jar.jnlp" version="7818658690000"/>
      <extension name="plugin_rawSQL.jar" href="servoy-client/plugins/rawSQL.jar.jnlp" version="1563731387301"/>
      <extension name="plugin_images.jar" href="servoy-client/plugins/images.jar.jnlp" version="4691195214000"/>
      <extension name="plugin_busy-v2.jar" href="servoy-client/plugins/busy-v2.jar.jnlp" version="1563731313715"/>
      <extension name="plugin_usermanager.jar" href="servoy-client/plugins/usermanager.jar.jnlp" version="10946122170000"/>
      <extension name="plugin_dialog.jar" href="servoy-client/plugins/dialog.jar.jnlp" version="1563731349174"/>
      <extension name="plugin_amortization.jar" href="servoy-client/plugins/amortization.jar.jnlp" version="1563731311370"/>
      <extension name="plugin_maintenance.jar" href="servoy-client/plugins/maintenance.jar.jnlp" version="1563731373266"/>
      <extension name="plugin_udp.jar" href="servoy-client/plugins/udp.jar.jnlp" version="1563731471368"/>
      <extension name="plugin_scheduler.jar" href="servoy-client/plugins/scheduler.jar.jnlp" version="6254926956000"/>
      <extension name="plugin_file.jar" href="servoy-client/plugins/file.jar.jnlp" version="1563731357450"/>
      <extension name="plugin_headlessclient.jar" href="servoy-client/plugins/headlessclient.jar.jnlp" version="1563731357651"/>
      <extension name="plugin_excelxport.jar" href="servoy-client/plugins/excelxport.jar.jnlp" version="4691195214000"/>
      <extension name="plugin_converters.jar" href="servoy-client/plugins/converters.jar.jnlp" version="1563731348911"/>
      <extension name="plugin_agent.jar" href="servoy-client/plugins/agent.jar.jnlp" version="1563731311185"/>
      <extension name="plugin_window.jar" href="servoy-client/plugins/window.jar.jnlp" version="1563731490043"/>
      <extension name="plugin_velocityreport.jar" href="servoy-client/plugins/velocityreport.jar.jnlp" version="29710903066000"/>
      <extension name="plugin_velocityreport.jar" href="servoy-client/plugins/velocityreport.jar.jnlp" version="29710903066000"/>
      <extension name="plugin_serialize.jar" href="servoy-client/plugins/serialize.jar.jnlp" version="6254926954000"/>
      <extension name="plugin_jflex.jar" href="servoy-client/plugins/jflex.jar.jnlp" version="1563731372906"/>
      <extension name="plugin_it2be-ftp.jar" href="servoy-client/plugins/it2be-ftp.jar.jnlp" version="6254926952000"/>
      <extension name="plugin_http.jar" href="servoy-client/plugins/http.jar.jnlp" version="7818658702000"/>
      <extension name="plugin_clientmanager.jar" href="servoy-client/plugins/clientmanager.jar.jnlp" version="1563731348789"/>
	  <extension name="plugin_sablo_2019.6.1.3503.jar" href="servoy-client/plugins/sablo_2019.6.1.3503.jar.jnlp" version=""/>
   </resources>
   <application-desc main-class="com.servoy.j2db.smart.J2DBClient">
      <argument>system.property.apple.laf.useScreenMenuBar:true</argument>
	</application-desc>
	<security>
   	<all-permissions/>
	</security>
</jnlp>

Thanks

I think this might happen when there is a CSS-positioned form in the solution.
I created a case to have this looked at/fixed: SVY-13999

It’s fixed in 2019.06.02.
It started to fail (CSS positioned forms in solutions that are deployed to smart client - even if smart client does not touch them) in 2019.03.0.