Hi Markus, Thanks for the report! I see this problem too. As a workaround, it is possible to run code generation from the DataMap tab or from the Maven/Gradle plugin.
And here is an issue to track [1] [1] https://issues.apache.org/jira/browse/CAY-2707 On Tue, Mar 30, 2021 at 10:45 AM Markus Reich <reich.mar...@gmail.com> wrote: > > Hi, > > I have opened a project which was created with 4.1 when I try to generate > the classes within the modeler I get the following error: > > [ERROR] Error generating classes > org.apache.cayenne.di.DIRuntimeException: DI container has no binding for > key <BindingKey: org.apache.cayenne.configuration.xml.DataChannelMetaData> > at > org.apache.cayenne.di.spi.DefaultInjector.getProvider(DefaultInjector.java:158) > at > org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:139) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.value(FieldInjectingProvider.java:103) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.injectMember(FieldInjectingProvider.java:68) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.injectMembers(FieldInjectingProvider.java:59) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.get(FieldInjectingProvider.java:44) > at > org.apache.cayenne.di.spi.DefaultScopeProvider.get(DefaultScopeProvider.java:50) > at > org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:139) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.value(FieldInjectingProvider.java:103) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.injectMember(FieldInjectingProvider.java:68) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.injectMembers(FieldInjectingProvider.java:59) > at > org.apache.cayenne.di.spi.FieldInjectingProvider.get(FieldInjectingProvider.java:44) > at > org.apache.cayenne.di.spi.DefaultScopeProvider.get(DefaultScopeProvider.java:50) > at > org.apache.cayenne.di.spi.DefaultInjector.getInstance(DefaultInjector.java:134) > at > org.apache.cayenne.modeler.editor.cgen.domain.CgenTabController.runGenerators(CgenTabController.java:71) > at > org.apache.cayenne.modeler.editor.GeneratorsTab.lambda$new$0(GeneratorsTab.java:51) > at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) > at > javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) > at > javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) > at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) > at > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) > at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289) > at java.awt.Component.processMouseEvent(Component.java:6539) > at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) > at java.awt.Component.processEvent(Component.java:6304) > at java.awt.Container.processEvent(Container.java:2239) > at java.awt.Component.dispatchEventImpl(Component.java:4889) > at java.awt.Container.dispatchEventImpl(Container.java:2297) > at java.awt.Component.dispatchEvent(Component.java:4711) > at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904) > at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535) > at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476) > at java.awt.Container.dispatchEventImpl(Container.java:2283) > at java.awt.Window.dispatchEventImpl(Window.java:2746) > at java.awt.Component.dispatchEvent(Component.java:4711) > at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760) > at java.awt.EventQueue.access$500(EventQueue.java:97) > at java.awt.EventQueue$3.run(EventQueue.java:709) > at java.awt.EventQueue$3.run(EventQueue.java:703) > at java.security.AccessController.doPrivileged(Native Method) > at > java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) > at > java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84) > at java.awt.EventQueue$4.run(EventQueue.java:733) > at java.awt.EventQueue$4.run(EventQueue.java:731) > at java.security.AccessController.doPrivileged(Native Method) > at > java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) > at java.awt.EventQueue.dispatchEvent(EventQueue.java:730) > at > java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) > at > java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) > at > java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) > at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) > > regards > Markus -- Best regards, Nikita Timofeev