We are happy to announce that the release candidate of Jmix v.1.3 is published in nexus.jmix.io repository! Studio v.1.3 is available through the nightly channel.
Please see what’s new for upgrade instructions and the list of new features.
The final release 1.3 is scheduled for the next week. We are now performing final tests and working on the documentation.
We will greatly appreciate if you test your project with the release candidate and let us know about any issues!
Creating a blank project from scratch gives this warning:
w: /home/.../app/src/main/kotlin/.../entity/User.kt: (86, 5): Override 'fun getTimeZoneId(): String?' has incorrect nullability in its signature comparing with overridden 'fun getTimeZoneId(): String'
This is what Jmix created:
override fun getTimeZoneId(): String? {
return timeZoneId
}
I guess it is because the interface is defined in java which does not have the nullability operator. But it is quite ugly to have that warning from an empty project.
Unable to create entity table in database. The Liquibase file is generated but ok button don’t respond. Following error is reported in ide
java.util.regex.PatternSyntaxException: Unclosed character class near index 10
[A-z0-9-]+
^
at java.base/java.util.regex.Pattern.error(Pattern.java:2027)
at java.base/java.util.regex.Pattern.clazz(Pattern.java:2695)
at java.base/java.util.regex.Pattern.sequence(Pattern.java:2138)
at java.base/java.util.regex.Pattern.expr(Pattern.java:2068)
at java.base/java.util.regex.Pattern.compile(Pattern.java:1782)
at java.base/java.util.regex.Pattern.(Pattern.java:1428)
at java.base/java.util.regex.Pattern.compile(Pattern.java:1068)
at kotlin.text.Regex.(Regex.kt:89)
at com.haulmont.jmixstudio.ui.liquibase.ChangeLogPreviewDialog.validateFilename(ChangeLogPreviewDialog.kt:648)
at com.haulmont.jmixstudio.ui.liquibase.ChangeLogPreviewDialog.doValidate(ChangeLogPreviewDialog.kt:662)
at com.intellij.openapi.ui.DialogWrapper.doValidateAll(DialogWrapper.java:376)
at com.intellij.openapi.ui.DialogWrapper$OkAction.doAction(DialogWrapper.java:1843)
at com.intellij.openapi.ui.DialogWrapper$DialogWrapperAction.actionPerformed(DialogWrapper.java:1810)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:270)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6654)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
at java.desktop/java.awt.Component.processEvent(Component.java:6419)
at java.desktop/java.awt.Container.processEvent(Container.java:2263)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5029)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2790)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.desktop/java.awt.Dialog.show(Dialog.java:1070)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:701)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:437)
at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1671)
at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1629)
at com.intellij.openapi.ui.DialogWrapper.showAndGet(DialogWrapper.java:1643)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogsProcess.doRun(GenerateDiffChangelogsProcess.kt:105)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogsProcess.access$doRun(GenerateDiffChangelogsProcess.kt:38)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogsProcess$run$2.invokeSuspend(GenerateDiffChangelogsProcess.kt:54)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogsProcess$run$2.invoke(GenerateDiffChangelogsProcess.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:91)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:165)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogsProcess.run(GenerateDiffChangelogsProcess.kt:52)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogActionProcess$run$2.invokeSuspend(GenerateDiffChangelogActionProcess.kt:78)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogActionProcess$run$2.invoke(GenerateDiffChangelogActionProcess.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:91)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:165)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogActionProcess.run(GenerateDiffChangelogActionProcess.kt:40)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogAction$actionPerformed$1.invokeSuspend(GenerateDiffChangelogAction.kt:30)
at com.haulmont.jmixstudio.intellij.action.liquibase.GenerateDiffChangelogAction$actionPerformed$1.invoke(GenerateDiffChangelogAction.kt)
at com.haulmont.intellij.CoroutinesKt$launchOnEDT$1$1.invokeSuspend(Coroutines.kt:25)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:214)
at com.intellij.openapi.application.TransactionGuardImpl.access$200(TransactionGuardImpl.java:21)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:196)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:348)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:131)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:187)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:760)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:492)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Could you tell what version of the Jmix plugin you were using when this issue occurred? And what is the value of the field with the liquibase changelog file name?
This “Frontend development build” message is shown when Vaadin loads all required NPM modules, which is a very long process first time. Moreover, it now happens twice, separately for Studio designer and for the application at runtime.
We’ll try to optimize it in the future patches.
Its not long time, the screen at design time is always blank. It does not load at all. At runtime after this message the screen load within second. Till build of 26 June it was working fine.