groovy-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jmeter Tea <jmeter...@gmail.com>
Subject Re: Long String concatenation failed
Date Wed, 26 Sep 2018 04:54:41 GMT
 Paul King: Thank you, I can live with a workaround of adding a line
continuation slash at the end of the line
Can you answer the original question in stackoverflow
<https://stackoverflow.com/questions/47786399/jmeter-groovy-script-concatenation-of-variables>
?

On Tue, Sep 25, 2018 at 10:27 PM, Paul King <paulk@asert.com.au> wrote:

>
> Groovy uses the end of line as the statement terminator unless it can
> safely tell that the next line should follow on. We didn't allow plus or
> minus on the next line
> when working out the list of things to safely accept since it would have
> been a breaking change for anyone using the unaryPlus or unaryMinus
> operators..
> I suspect very few people use that operator as an overloadable operator
> but some folks might use it in their DSLs for instance.
>
> We could create a GEP for Groovy 3.0 to change the behavior. We'd need to
> outline how to allow the unary operator style.
>
> Why not use the line continuation slash at the end of the line:
>
> String text= "0"+"1" +
> "2" \
> +"3"
>
> Cheers, Paul.
>
>
> On Tue, Sep 25, 2018 at 11:47 PM Jmeter Tea <jmetertea@gmail.com> wrote:
>
>> *mg: *Yes, I saw that it's working, but still,
>>
>> groovy should add sugar to java instead of removing support of working
>> code in java as:
>> String text= "0"+"1" +
>> "2"
>> +"3";
>>
>> Which I'm getting error:
>> javax.script.ScriptException: groovy.lang.MissingMethodException: No
>> signature of method: java.lang.String.positive() is applicable for argument
>> types: () values: []
>> Possible solutions: notify(), tokenize(), size(), size()
>>
>> Can I open a bug in groovy for this?
>>
>> On Tue, Sep 25, 2018 at 4:04 PM, mg <mgbiz@arscreat.com> wrote:
>>
>>> You can have new lines, just move the "<<" oi the end of the previous
>>> line, so Groovy knows there is more coming (Groovy does not need
>>> end-of-line semicolons btw):
>>>
>>> String text ="<id>" <<vars["id1"] << "<id><id2>"
<<
>>>
>>> vars["id2"] << "<id2>"
>>>
>>>
>>> -------- Ursprüngliche Nachricht --------
>>> Von: Jmeter Tea <jmetertea@gmail.com>
>>> Datum: 25.09.18 14:54 (GMT+01:00)
>>> An: users@groovy.apache.org
>>> Betreff: Re: Long String concatenation failed
>>>
>>> Thank for your answers, I still have some comments:
>>> *mg: *I don't want to have a huge line with 20 parameters that can't be
>>> seen on screen so I need new lines between parameters
>>> Nelson, Erick: I don't need XML as the article suggest " builder
>>> classes to create XML "
>>>
>>> On Tue, Sep 25, 2018 at 3:39 PM, Nelson, Erick <
>>> Erick.Nelson@hdsupply.com> wrote:
>>>
>>>> No, I mean markup builder.
>>>>
>>>> Mr Haki says it best….
>>>>
>>>> http://mrhaki.blogspot.com/2009/10/groovy-goodness-
>>>> creating-xml-with.html
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Erick Nelson
>>>>
>>>> Senior Developer – IT
>>>>
>>>> HD Supply Facilities Maintenance
>>>>
>>>> (858) 740-6523
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *From: *mg <mgbiz@arscreat.com>
>>>> *Reply-To: *"users@groovy.apache.org" <users@groovy.apache.org>
>>>> *Date: *Tuesday, September 25, 2018 at 5:19 AM
>>>> *To: *"users@groovy.apache.org" <users@groovy.apache.org>
>>>> *Subject: *Re: Long String concatenation failed
>>>>
>>>>
>>>>
>>>> If it is just the CTE that is the problem, you just have ro move the
>>>> "<<" to the end of the previous line...
>>>>
>>>>
>>>>
>>>> -------- Ursprüngliche Nachricht --------
>>>>
>>>> Von: Jmeter Tea <jmetertea@gmail.com>
>>>>
>>>> Datum: 25.09.18 09:56 (GMT+01:00)
>>>>
>>>> An: users@groovy.apache.org
>>>>
>>>> Betreff: Long String concatenation failed
>>>>
>>>>
>>>>
>>>> Hello,
>>>>
>>>> I have to  concatenate a lot of variables in a script and I want to make
it readable, but I failed to separate lines as in java, The following code doesn't compile
due to:
>>>>
>>>> Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException:
startup failed:
>>>>
>>>> Script1.groovy: 2: unexpected token: << @ line 2, column 1.
>>>>
>>>>    << vars["id2"] << "<id2>"
>>>>
>>>>
>>>>
>>>> Code:
>>>>
>>>> String text ="<id>" <<vars["id1"] << "<id><id2>"
>>>>
>>>> << vars["id2"] << "<id2>";
>>>>
>>>>
>>>>
>>>> Is there a workaround or a better way concatenation a string in groovy?
>>>>
>>>>
>>>>
>>>> Related question:
>>>>
>>>> https://stackoverflow.com/questions/47786399/jmeter-
>>>> groovy-script-concatenation-of-variables
>>>>
>>>>
>>>>
>>>> Thank you
>>>>
>>>
>>>
>>

Mime
View raw message