groovy-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Keegan Witt <keeganw...@gmail.com>
Subject Re: Groovy script error in OFBiz
Date Fri, 14 Aug 2015 12:32:52 GMT
FYI, it is possible to apply ASTs to scripts.  Remember that at the end of
the day, scripts are compiled too (just compiled on the fly).  How are you
extending org.ofbiz.service.engine.GroovyBaseScript?  Is it in a jar on the
classpath?  And are you sure there are no ASTs in it?

-Keegan

On Fri, Aug 14, 2015 at 6:19 AM, Jacques Le Roux <
jacques.le.roux@les7arts.com> wrote:

> Since we don't compile groovy code I think we don't do AST
> transformations.
> https://glaforge.appspot.com/article/groovy-ast-transformations-tutorials
>
> Jacques
>
>
>
> Le 14/08/2015 11:02, Cédric Champeau a écrit :
>
> 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 <jacques.le.roux@les7arts.com>:
>
>> 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
>>
>
>
>

Mime
View raw message