2014-10-10 52 views
0

當試圖羅馬尼亞特殊字符(變音符號)存儲到Solr模式字段,如:Solr的4.7.1和Tomcat 6不存儲羅馬尼亞字符

<field name="description" type="text_general" indexed="true" stored="true" required="false"/> 

羅馬尼亞字符是:(A,I ,â,ş,ţ),它們在SOLR中被替換爲?

要提到我已經完成了基本設置的所有要求,我使用Tomcat6運行它。

我的Solr的版本是4.7.1

回答

0

確保在正確的編碼提交數據到Solr。

還要考慮爲內容類型指定字符集。例如。內容類型:text/plain的; charset = UTF-8

另請嘗試檢查Solr端的數據解析方式。就在調試這個方法:

org.apache.solr.servlet.SolrRequestParsers.parseParamsAndFillStreams(HttpServletRequest, ArrayList<ContentStream>) 

見thise線:

final String cs = ContentStreamBase.getCharsetFromContentType(req.getContentType()); 
final Charset charset = (cs == null) ? IOUtils.CHARSET_UTF_8 : Charset.forName(cs); 

的Solr應該拿出UTF-8在這裏。