Are you writing your own AST transformations? If so, it is likely a bug in one of them, and the error message is there to tell you something is wrong with it.
2015-08-14 10:52 GMT+02:00 Jacques Le Roux <[email protected]>: > Hi, > > We heavily rely on Groovy in Apache OFBiz where it replaced BeanShell 7 > years ago. We only use it for scripts, we don't use the compiler. > > I thought upgrading from 2.2.1 to 2.4.4 would be a breeze. So I simply > deleted groovy-all-2.2.1.jar and added groovy-all-2.4.4.jar locally before > committing. But I was surprised to get this error, which exists in all our > scripts. > > [java] Caused by: > org.codehaus.groovy.control.MultipleCompilationErrorsException: startup > failed: > [java] > component://commonext/webapp/ofbizsetup/organization/changeOrgPartyId.groovy: > 23: A transform used a generics containing ClassNode > org.ofbiz.service.engine.GroovyBaseScript for the super class cha > ngeOrgPartyId directly. You are not supposed to do this. Please create a > new ClassNode referring to the old ClassNode and use the new ClassNode > instead of the old one. Otherwise the compiler will create wrong > descriptors and a potential NullPointerException in TypeResolver in the > OpenJDK. If this is not your own doing, please report this bug to the > writer of the transform. > [java] @ line 23, column 1. > [java] partyAcctgPrefAndGroupList = []; > [java] ^ > [java] > [java] 1 error > [java] > [java] at > org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:310) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1075) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:591) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:569) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:546) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:298) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:254) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:212) > ~[groovy-all-2.4.4.jar:2.4.4] > [java] at > org.ofbiz.base.util.GroovyUtil.parseClass(GroovyUtil.java:162) > ~[ofbiz-base.jar:?] > [java] at > org.ofbiz.base.util.GroovyUtil.getScriptClassFromLocation(GroovyUtil.java:134) > ~[ofbiz-base.jar:?] > [java] at > org.ofbiz.base.util.GroovyUtil.runScriptAtLocation(GroovyUtil.java:170) > ~[ofbiz-base.jar:?] > [java] at > org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:342) > ~[ofbiz-base.jar:?] > [java] at > org.ofbiz.base.util.ScriptUtil.executeScript(ScriptUtil.java:324) > ~[ofbiz-base.jar:?] > [java] at > org.ofbiz.widget.model.AbstractModelAction$Script.runAction(AbstractModelAction.java:632) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.AbstractModelAction.runSubActions(AbstractModelAction.java:141) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:273) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreen.renderScreenString(ModelScreen.java:164) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ScreenFactory.renderReferencedScreen(ScreenFactory.java:211) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:780) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:98) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:280) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreen.renderScreenString(ModelScreen.java:164) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ScreenFactory.renderReferencedScreen(ScreenFactory.java:211) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:860) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:98) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:280) > ~[ofbiz-widget.jar:?] > [java] at > org.ofbiz.widget.model.ModelScreen.renderScreenString(ModelScreen.java:164) > ~[ofbiz-widget.jar:?] > [java] ... 28 more > > I looked for similar cases on the Internet and found > https://issues.apache.org/jira/browse/GROOVY-5112 > https://issues.apache.org/jira/browse/GROOVY-6691 > > So do you think this could be a bug in Groovy or should we rather dive in > in our code? > > Thanks > > Jacques >
