I'm agree Jacques with that.

Some time on specific customer code I was confronted to bad gstring
conversion on groovy service because I forgot that "this ${code}" isn't
a string in groovy !

:)

Nicolas


On 13/02/2021 13:48, Jacques Le Roux wrote:
> Hi,
>
> I spotted this error in log
>
> 2021-02-13 10:17:03,503 |jsse-nio-8443-exec-8
> |Converters                    |W| *** No converter found, converting
> from org.codehaus.groovy.runtime.GStringImpl to java.lang.String.
> Please report this message to the developer community s
> o a suitable converter can be created. ***
> 2021-02-13 10:17:03,503 |jsse-nio-8443-exec-8
> |ObjectType                    |E| null
> java.lang.ClassNotFoundException: No converter found for
> org.codehaus.groovy.runtime.GStringImpl->java.lang.String
>         at
> org.apache.ofbiz.base.conversion.Converters.getConverter(Converters.java:119)
> ~[main/:?]
>         at
> org.apache.ofbiz.base.util.ObjectType.simpleTypeOrObjectConvert(ObjectType.java:328)
> [main/:?]
>         at
> org.apache.ofbiz.base.util.ObjectType.simpleTypeOrObjectConvert(ObjectType.java:256)
> [main/:?]
>         at
> org.apache.ofbiz.base.util.ObjectType.simpleTypeOrObjectConvert(ObjectType.java:375)
> [main/:?]
>         at
> org.apache.ofbiz.entity.GenericEntity.set(GenericEntity.java:550)
> [main/:?]
>         at
> org.apache.ofbiz.entity.GenericEntity.set(GenericEntity.java:502)
> [main/:?]
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[?:1.8.0_202]
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> ~[?:1.8.0_202]
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[?:1.8.0_202]
>         at java.lang.reflect.Method.invoke(Method.java:498)
> ~[?:1.8.0_202]
>         at
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101)
> [groovy-2.5.11.jar:2.5.11]
>         at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323)
> [groovy-2.5.11.jar:2.5.11]
>         at
> groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:2754)
> [groovy-2.5.11.jar:2.5.11]
>         at
> groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:3809)
> [groovy-2.5.11.jar:2.5.11]
>         at
> org.codehaus.groovy.runtime.InvokerHelper.setProperty(InvokerHelper.java:217)
> [groovy-2.5.11.jar:2.5.11]
>         at
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.setProperty(ScriptBytecodeAdapter.java:496)
> [groovy-2.5.11.jar:2.5.11]
>         at
> DataServices.saveLocalFileDataResource(DataServices.groovy:280)
> [script:?]
>         at DataServices$saveLocalFileDataResource.callCurrent(Unknown
> Source) [script:?]
>         at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
> [groovy-2.5.11.jar:2.5.11]
>         at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:156)
> [groovy-2.5.11.jar:2.5.11]
>         at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:168)
> [groovy-2.5.11.jar:2.5.11]
>         at
> DataServices.attachUploadToDataResource(DataServices.groovy:191)
> [script:?]
> [...]
> 2021-02-13 10:17:03,507 |jsse-nio-8443-exec-8
> |ObjectType                    |I| No special conversion required for
> org.codehaus.groovy.runtime.GStringImpl to String, returning
> object.toString().
>
> To prevent this message, I propose to bypass GString to String
> conversion.
>
> What do you think?
>
> Jacques
>

Reply via email to