Uwe, that is one alternative.
The only reason i did it this way, is because I felt it was a bit of a trap (to any users using the Filter directly). This is because JDK collators are in fact thread safe.
This is a slight difference, because the following code is always safe:
new CollationFilter(Collator.newInstance(lang)), cloning would be wrong.
I don't think this is really a reasonable example, usually in the search engine you would never use code like this: the sort keys will be way too large for no reason. For example usually its the case you will set something more reasonable like primary strength (case-insensitive).
Because the clone is cheap, and this is a trap to users, I'm still going to fight for my original patch. This way the ICU and JDK functionality behave consistently from a user perspective.