We faced the issues that we can't register custom QueryParser.
More correctly saying, it doesn't work because the Query object is wrapped with NamedObjects just before parse and QueryParsers cannot choose the proper QueryParserPair.
Thank you for handling this issue, Christoph.
I noticed the changes you made in the commit log, and I found some issues still remain.
Let's say we want to add a custom query called MyQuery with MyQueryParser, it is a common use case that we add a specific field and/or a specific interface to MyQuery and construct SolrQuery instance with it in the MyQueryParser#constructSolrQuery like other Query such as DefualtQueryParser.
Here, we seem to have a problem, because the argument of QueryParser#constructorSolrQuery is the type of SolrDataQuery and the actual instance passed to the interface is wrapped one.
Therefore, there is no way to access MyQuery-specific fields and/or interface because AbstractQueryDecorator hides the actual Query.