On 6 May 2013, at 23:49, Chris Graham wrote: > Looking at that issue, if the issue was meant to deal with the example > given, ie, and array of strings, then the issue is most certainly not > fixed, as it is my exact case.
The issue addressed making the behaviour more consistent, which it does - iirc the same XML configuration injected into a list would give a list with one element, so for the array case I'd expect a one element array. > Either way, as that behaviour is in published versions, my plugin needs to > be able to deal with both cases. > > From my example, > <msgSets> > <msgSet /> > </msgSets> > > > It is giving me precisely what the pom says. An arrary, of one null element. > > It just surprised me that the behaviour changed when compared to 2.x. Were > I got a null array. Various undefined or inconsistent behaviour was cleaned up and made consistent rather than carry-over broken/odd behaviour. > it's really up to you guys to decide if it's a) worth 'fixing' or if that > is indeed the desired behaviour. I don't mind fixing bugs as long as there a clear testcase, but I think it would be a mistake to start special-casing injected arrays vs collections. > I'll see if I can get <msgSets/> to pass parsing, as that should also work. > > -Chris > > > > On Tue, May 7, 2013 at 1:25 PM, Stuart McCulloch <mccu...@gmail.com> wrote: > >> Actually I think it might be a side-effect of the following >> feature/improvement made for M3: >> >> https://issues.sonatype.org/browse/SISU-58 >> >> where the code to handle arrays was made more consistent wrt. the handling >> of collections. >> >> On 6 May 2013, at 12:35, Hervé BOUTEMY wrote: >> >>> looks like a subtle change in injection when moving from Plexus to Guice >>> >>> Regards, >>> >>> Hervé >>> >>> Le lundi 6 mai 2013 23:06:49 Chris Graham a écrit : >>>> Hey All. >>>> >>>> I'm not sure if I've found a regression issue with Maven 3.0.x (tried >> with >>>> all versions beta-1 onwards to 3.0.5) or not. V3.x behaves differently >> to >>>> 2.09, 2.0.11 and 2.2.1. >>>> >>>> I've written a plugin for WebSphere Message Broker; basically it's a >>>> wrapper for the underlying mqsicreatebar tool. >>>> >>>> Amongst other things, it takes zero or more message sets and message >> flows. >>>> To handle this, I defined the parameters as an array. >>>> >>>> Here is the snippet from the plugin's source: >>>> /** >>>> * The message flows to be added to the bar file. >>>> * @parameter expression="${msgFlows}" >>>> * @required >>>> */ >>>> private String[] msgFlows; >>>> >>>> /** >>>> * The message sets to be added to the bar file. >>>> * @parameter expression="${msgSets}" >>>> * @required >>>> */ >>>> private String[] msgSets; >>>> >>>> and here is an example configuration section from a pom that uses the >>>> plugin: >>>> >>>> <configuration> >>>> <skipApplyOverrides>false</skipApplyOverrides> >>>> <isV60>true</isV60> >>>> <workspace>${wmbtk.workspace.root}/24a</workspace> >>>> <msgFlows> >>>> >>>> <msgFlow>MFP_Project/com/blah/MFL_DiagFlow.msgflow</msgFlow> >>>> </msgFlows> >>>> <msgSets> >>>> <msgSet /> >>>> </msgSets> >>>> </configuration> >>>> >>>> So we have one message flow, but no message sets. >>>> >>>> Here is where the differences are seen. >>>> >>>> Maven 2.0.9, 2.0.11 and 2.2.1 will initialise the msgSets as null. >>>> >>>> Maven 3.0 (beta-1 to 3.0.5) will initialise msgSets as a single element >> of >>>> null. >>>> >>>> My question boils down to: is this the desired behaviour? >>>> >>>> I've had to adjust my code to work under Maven 3.x (which I didn't think >>>> that I had too). >>>> >>>> From memory, I can not supply an empty <msgSets/> element (but I need to >>>> check that). >>>> >>>> -Chris >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org >>> For additional commands, e-mail: dev-h...@maven.apache.org >>> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org >> For additional commands, e-mail: dev-h...@maven.apache.org >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org