The approach will not succeed, as you can search, but you cannot sort by a multivalued field. This pointed out in Sorting with Multivalued Field in Solr and written in Solr's Wiki
Sorting can be done on the "score" of the document, or on any multiValued="false" indexed="true" field provided that field is either non-tokenized (ie: has no Analyzer) or uses an Analyzer that only produces a single Term (ie: uses the KeywordTokenizer)
Update
About the alternatives, as you point out that you need to find similar documents for one given ID, why not create a second core with a schema like
<fields>
<field name="doc_id" type="int" indexed="true" stored="true" />
<field name="similar_to_id" type="int" indexed="true" stored="true" />
<field name="similarity" type="string" indexed="true" stored="true" />
</fields>
<types>
<fieldType name="int" class="solr.TrieIntField"/>
<fieldType name="string" class="solr.StrField" />
</types>
Then you could do a second query, after performing the actual search
q=similar_to_id=42&sort=similarity