Solrj を使用して、Solr でドキュメントのインデックスを作成しています。フィールドの 1 つは URL です。solr ドキュメントを作成し、それを SolrServer に渡す間、URL の元の形式を維持するために、明示的なデコードは行いません。ただし、インデックスが作成されると、URL はデコードされます。
Here's a test example which contains apostrophe.
http://test.com/test/Help/What%e2%80%99s_N1
In solr index, it's being decoded to
http://test.com/test/Help/What's_N1
Here's a sample code :
SolrServer solrServer = new StreamingUpdateSolrServer(solrPostUrl, solrQueueSize, solrThreads);
SolrInputDocument solrDoc = new SolrInputDocument();
solrDoc.addField("url", "http://test.com/test/Help/What%e2%80%99s_N1");
UpdateResponse solrResponse = solrServer.add(solrDoc);
I looked into the SolrInputDocument object, it does have the right format, i.e. the encoded version.
I'll appreciate if someone can provide pointers to this.
Thanks