When using a java.util.List as the root target of a PropertyModel, and then using a property expression such as ".someProperty", PropertyResolver breaks rather badly, claiming that "0].somePropert" is not a valid property expression. Note the missing first and last characters.
This happens because it first replaces all opening "[" with ".[", and thus we get a leading "." in the expression. That "." is then cut off, but the rest of the expression is suddenly treated as a single property name. A later step sees the leading "[" and thinks the whole thing is just a map/list index, and so drops the leading "[" and the last character (in the mistaken belief that the last character must be a "]".
To make a long story short: The whole thing is fixed by eating the leading dots before entering the main resolver loop. I'm attaching patches for 1.4.x and trunk(1.5).