Sitecore XPでは、特定の言語用の動的フィールドが自動的に作成されます。Solr検索プロバイダーを使用してポーランド語版のアイテムをインデックスする場合、ログに次のようなメッセージが出力されることがあります:
9524 2015:06:25 14:52:03
WARN Crawler : AddRecursive DoItemAdd failed - {6601373B-C31A-43D7-8DD8-6429ACA38298} Exception: SolrNet.Exceptions.SolrConnectionException Message: <?xml version="1.0" encoding="UTF-8"?> <response> <lst name="responseHeader"><int name="status">400</int><int name="QTime">98</int></lst>
<lst name="error"><str name="msg">
ERROR:
[doc=sitecore://master/{110d559f-dea5-42ea-9c1c-8a5df7e70ef9}?lang=pl-pl&ver=1&ndx=sitecore_master_index] unknown field 'title_t_pl'</str>
<int name="code">400</int></lst>
</response>
オプション 1
<fieldType name="text_pl" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.StandardTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory"/> <filter class="solr.StempelPolishStemFilterFactory"/> </analyzer> </fieldType>
<dynamicField name="*_t_pl" type="text_pl" indexed="true" stored="true" />
または(言語固有のフィールド タイプを作成しない場合):
<dynamicField name="*_t_pl" type="text_general" indexed="true" stored="true" />
注:Sitecoreを使用してSolrスキーマにデータを入力した場合、その変更は上書きされます。通常、このステップは新しい環境のデプロイ時、または製品の新しいバージョンへのアップグレード後にのみ実行されます。変更が誤って上書きされないようにしたい場合は、オプション2をチェックしてください。
オプション 2
また、Solrスキーマの変更は、コードによって導入することも可能です。
注:
本解決策で説明した手順を使用して、他の言語のサポートを追加することができます。