最近、Jackrabbit(1.6.2)で動作するアプリケーションにLucene(2.4.1)のサポートを追加しました。私たちはjackrabbitチュートリアルで説明されているようにすべてを行っています。そして、すべての作品はほぼ正常です。しかし、私はいくつかの奇妙な動作に気付き、それについてのドキュメントを見つけることはできません。私はそれについてあなたに尋ねることに決めました。例えばLucene Jackrabbit
:JCRに:私は、ノード(コンテンツJCR):内のテキストを次したデータプロパティを
The quick brown fox jumps over the lazy dog
[email protected]#$%^&
travmik!
tra!vmik
私のXPathクエリは以下の通りです:
String query = "root/element(*,my:documentBody)
[jcr:contains(*/*/element(*),'*" + param +"*')]";
それから私は、検索しよう: 「クイック」、「キック」、「クイック」、「k」、「ck」、「ick」、「ウイック」、「クイックブラウンキツネ」、「クイックキツネ」、「クイックキツネ」、 、 "tra"、 "travmik"、 "mik" - すべてがOK ok
"TRA vmik!"、 "travmik!"、 "@#$!" - 何
そして、はい、私はthisからすべての特殊文字をエスケープ。
どうしたのですか?
P.S.もう1つの質問があります。Lucene docsによれば、「検索の最初の文字として*または?記号を使用することはできませんが、私は使用しています。どうして?