SolrEntityProcessorはサブエンティティに対して 1 回だけ呼び出されるため、 https: //issues.apache.org/jira/browse/SOLR-3336?page=com.atlassian.jira.plugin.system.issuetabpanels でパッチを適用した SolrEntityProcessor を使用できます。サブエンティティの問題を解決するためのコメントタブパネル。
jarファイルの名前をzipに変更してから、パッチを適用したファイルを置き換えようとしましたが、Javaファイルしか取得していないため、クラスファイルに置き換えることはできません。だから私はこの考えを捨てる。
これが私が試したことです。solr 4.2 パッケージにある元の jar solr-dataimporthandler-4.2.0.jar を逆コンパイルしました。次に、パッチ ファイルを置き換えます。そして、jar を作成するためのファイルを再度コンパイルしてみてください。しかし、コンパイルエラーが発生し始めました。
.\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: ')' が必要です
/* 432 / if (XPathEntityProcessor.2.this.val$isEnd.get()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: 予想 / 432 / if (XPathEntityProcessor.2. this.val$isEnd.get()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: ステートメントではありません / 432 / if (XPathEntityProcessor.2.this.val$isEnd.get ()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: 式の開始が不正です / 432 */ if (XPathEntityProcessor.2.this.val$isEnd.get()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: ';' 期待される
/* 432 */ if (XPathEntityProcessor.2.this.val$isEnd.get()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:397: ';' 期待される
/* 432 / if (XPathEntityProcessor.2.this.val$isEnd.get()) { ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:398: ステートメントではありません / 433 */ XPathEntityProcessor. 2.this.val$throwExp.set(false); ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:398: ';' 期待される
/* 433 / XPathEntityProcessor.2.this.val$throwExp.set(false); ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:406: ステートメントではありません / 442 */ XPathEntityProcessor.2.this.val$isEnd.set(true); ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:406: ';' 期待される
/* 442 / XPathEntityProcessor.2.this.val$isEnd.set(true); ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:409: ステートメントではありません / 445 */ XPathEntityProcessor.2.this.offer(row); ^ .\org\apache\solr\handler\dataimport\XPathEntityProcessor.java:409: ';' 期待される
/* 445 */ XPathEntityProcessor.2.this.offer(行); ^ 12 エラー
この問題に対して Solr4.2 にパッチを適用する方法を教えてください。