0

バージョン一覧

  • ソル 4.2.0
  • Ubuntu 12.10
  • トムキャット6
  • SQL 5.5.29

サーバーにsolrを正常にセットアップし、このリンクを使用してsolr管理ページにアクセスできます

http://localhost:8080/solr

問題は dataimport にあります。dataimport の試行時に http ステータス 404 エラーが表示されます...

説明 : 要求されたリソース (/solr/dataimport) は利用できません。

 http://localhost:8080/solr/dataimport

ここに私のディレクトリ構造があります

root@web:~/solr-4.2.0/example/solr/collection1/conf# ls

admin-extra.html mapping-FoldToASCII.txt
stopwords.txt admin-extra.menu-bottom.html mapping-ISOLatin1Accent.txt synonyms.txt admin-extra.menu-top.html
protwords.txt update-script.js currency.xml
schema.xml 速度 data-config.xml scripts.conf
xslt elevate.xml
solrconfig.xml lang spellings.txt

root@ web:~/solr-4.2.0/example/lib# ls

jetty-continuation-8.1.8.v20121106.jar jetty-server-8.1.8.v20121106.jar jetty-deploy-8.1.8.v20121106.jar
jetty-servlet-8.1.8.v20121106.jar jetty-http-8.1. 8.v20121106.jar
jetty-util-8.1.8.v20121106.jar jetty-io-8.1.8.v20121106.jar
jetty-webapp-8.1.8.v20121106.jar jetty-jmx-8.1.8.v20121106.jar
jetty -xml-8.1.8.v20121106.jar jetty-security-8.1.8.v20121106.jar
サーブレット-api-3.0.jar

root@ web:~/solr-4.2.0/dist# ls -l total 20716 -rw-r--r-- 1 root root 17359734 Mar 7 06:32 solr-4.2.0.war -rw-r-- r-- 1 ルート root 16714 Mar 7 06:31 solr-analysis-extras-4.2.0.jar -rw-r--r-- 1 root root 29896 Mar 7 06:32 solr-cell-4.2.0.jar -rw-r--r-- 1 ルート ルート 50435 3 月 7 日 06:31 solr-clustering-4.2.0.jar -rw-r--r-- 1 ルート ルート 2106321 3 月 7 日 06:32 solr-core-4.2 .0.jar -rw-r--r-- 1 ルート ルート 217076 3 月 7 日 06:31 solr-dataimporthandler-4.2.0.jar -rw-r--r-- 1 ルート ルート 31134 3 月 7 日 06:31 solr -dataimporthandler-extras-4.2.0.jar -rw-r--r-- 1 ルート ルート 766460 3 月 7 日 06:32 solr-langid-4.2.0.jar -rw-r--r-- 1 ルート ルート 392357 3 月 7 日 06:32 solr-solrj-4.2.0.jar -rw-r--r-- 1 ルート root 149825 3 月 7 日 06:31 solr-test-framework-4.2.0.jar -rw-r--r -- 1 ルート ルート 38743 3 月 7 日 06:32 solr-uima-4.2.0。jar -rw-r--r-- 1 ルート ルート 20286 3 月 7 日 06:32 solr-velocity-4.2.0.jar drwxr-xr-x 2 ルート ルート 4096 6 月 20 日 17:59 solrj-lib drwxr-xr-x 4 ルート ルート 4096 6 月 20 日 17:59 テスト フレームワーク

root@ web:~/solr-4.2.0/contrib# ls -l 合計 28 drwxr-xr-x 4 root root 4096 Mar 7 06:33 analysis-extras drwxr-xr-x 3 root root 4096 Jun 20 17:59クラスタリング drwxr-xr-x 3 ルート ルート 4096 6 月 20 日 17:59 dataimporthandler drwxr-xr-x 3 ルート ルート 4096 6 月 20 日 17:59 抽出 drwxr-xr-x 3 ルート ルート 4096 6 月 20 日 17:59 langid drwxr-xr- x 4 ルート ルート 4096 3 月 7 日 06:33 uima drwxr-xr-x 3 ルート ルート 4096 6 月 20 日 17:59 速度

root@web:~/solr-4.2.0/example/solr# ls -l 合計 20

-rw-r--r-- 1 ルート ルート 2473 2012 年 10 月 17 日 README.txt drwxr-xr-x 2 ルート ルート 4096 2012 年 10 月 17 日 bin drwxr-xr-x 3 ルート ルート 4096 2012 年 6 月 17 日 17:59 コレクション 1 -rw- r--r-- 1 ルート ルート 2222 6 月 25 日 15:44 solr.xml -rw-r--r-- 1 ルート ルート 501 2012 年 10 月 17 日 Zoo.cfg

/solr-4.2.0/example/solr/collection1/conf にあるsolarconfig.xmlファイルに dataimport lib パスが追加されました

<lib dir="../../../../../contrib/dataimporthandler/lib" regex=".*\.jar" />
  <lib dir="../../../../contrib/extraction/lib" regex=".*\.jar" />
  <lib dir="../../../../dist/" regex="solr-cell-\d.*\.jar" />

  <lib dir="../../../../contrib/clustering/lib/" regex=".*\.jar" />
  <lib dir="../../../../dist/" regex="solr-clustering-\d.*\.jar" />

  <lib dir="../../../../contrib/langid/lib/" regex=".*\.jar" />
  <lib dir="../../../../dist/" regex="solr-langid-\d.*\.jar" />

  <lib dir="../../../../contrib/velocity/lib" regex=".*\.jar" />
  <lib dir="../../../../dist/" regex="solr-velocity-\d.*\.jar" />
<lib dir="../../../../dist/" regex="solr-dataimporthandler-\d.*\.jar" />

パスを別のディレクトリに変更しようとしましたが、それでも同じ応答です..

これを定義した同じsolarconfig.xmlファイルで

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
      <str name="config">data-config.xml</str>
      <lst name="datasource">
         <str name="driver">com.mysql.jdbc.Driver</str>
         <str name="url">jdbc:mysql://localhost:3306/web</str>
         <str name="user">username</str>
         <str name="password">password</str>
      </lst>
    </lst>
  </requestHandler>

他のフィールド名の下のschema.xmlファイルに自分のフィールド名を追加しました...

<field name="solr_field1" type="long" indexed="true" stored="true" required="true" multiValued="false" />
        <field name="solr_field2" type="long" indexed="true" stored="true" required="true" multiValued="false" />

 <field name="solr_field3" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field4" type="string" indexed="true" stored="true" required="true" multiValued="false" />

<field name="solr_field5" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field6" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field7" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field8" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field9" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field10" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field11" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_field12" type="string" indexed="true" stored="true" required="true" multiValued="false" />

そして、これらのあとがきこれらのフィールドも...

<copyField source="contact_name" dest="text"/>
<copyField source="contact_email" dest="text"/>
<copyField source="business_name" dest="text"/>
<copyField source="city" dest="text"/>
<copyField source="state" dest="text"/>
<copyField source="zip_code" dest="text"/>
<copyField source="phone" dest="text"/>
<copyField source="website" dest="text"/>
<copyField source="address" dest="text"/>
<copyField source="major_division" dest="text"/>

同じディレクトリにdata-config.xmlファイルを作成し、次の行を追加しました

<dataConfig>
 <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver url="jdbc:mysql://localhost:3306/web" user="username" password="password"/>
 <document>
     <entity name="id " query="select * from business">
        <field column="id" name="solr_field1"/>
        <field column="metro_id" name="solr_field2"/>
        <field column="contact_name" name="solr_field3"/>
        <field column="contact_email" name="solr_field4"/>
        <field column="business_name" name="solr_field5"/>
        <field column="city" name="solr_field6"/>
        <field column="state" name="solr_field7"/>
        <field column="zip_code" name="solr_field8"/>
        <field column="phone" name="solr_field9"/>
        <field column="website" name="solr_field10"/>
        <field column="address" name="solr_field11"/>
        <field column="major_division" name="solr_field12"/>
     </entity>
 </document>
</dataConfig>

solr.xmlファイルにsharedLib="../lib" を追加

<solr persistent="true" sharedLib="../lib">
  <cores adminPath="/admin/cores" defaultCoreName="collection1" host="${host:}" hostPort="${jetty.port:}" hostContext="${hostContext:}" zkClientTimeout="${zkClientTimeout:15000}">
    <core name="collection1" instanceDir="collection1" />
  </cores>
</solr>

solrにdataimportを認識させる方法についての助けをいただければ幸いです...

4

1 に答える 1