【问题标题】:How to fetch data from database in solrsolr如何从数据库中获取数据
【发布时间】:2011-08-27 22:48:39
【问题描述】:

我想从数据库中获取数据以通过 solr 进行索引。 我的 db-data-config.xml 是:

<dataConfig>
    <dataSource type="JdbcDataSource" driver="org.gjt.mm.mysql.Driver" url="jdbc:mysql://192.168.1.9:3306/angara" user="root" password="ampliflex" />
    <document>
                 <entity name="tdiamonds" query="select UID_PK from tdiamonds"
            <field column="UID_PK" name="name" />
          </entity>
    </document> </dataConfig>

我在 schema.xml 和 solrconfig.xml 中做了必要的更改,但我仍然遇到了一些异常。我不清楚这是什么意思,请给我一些建议。我遇到的例外情况是:

org.apache.solr.handler.dataimport.DataImportHandlerException: 初始化时发生异常 上下文在 org.apache.solr.handler.dataimport.DataImporter.loadDataConfig(DataImporter.java:190) 在 org.apache.solr.handler.dataimport.DataImporter.(DataImporter.java:101) 在 org.apache.solr.handler.dataimport.DataImportHandler.inform(DataImportHandler.java:113) 在 org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.java:486) 在 org.apache.solr.core.SolrCore.(SolrCore.java:588) 在 org.apache.solr.core.CoreContainer.create(CoreContainer.java:428) 在 org.apache.solr.core.CoreContainer.load(CoreContainer.java:278) 在 org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:117) 在 org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:83) 在 org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:99) 在 org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 在 org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:594) 在 org.mortbay.jetty.servlet.Context.startContext(Context.java:139) 在 org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218) 在 org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500) 在 org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) 在 org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 在 org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) 在 org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161) 在 org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 在 org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) 在 org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 在 org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117) 在 org.mortbay.jetty.Server.doStart(Server.java:210) 在 org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 在 org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native 方法)在 sun.reflect.NativeMethodAccessorImpl.invoke(未知 来源)在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知 来源)在 java.lang.reflect.Method.invoke(未知 来源)在 org.mortbay.start.Main.invokeMain(Main.java:183) 在 org.mortbay.start.Main.start(Main.java:497) 在 org.mortbay.start.Main.main(Main.java:115) 造成的: org.xml.sax.SAXParseException:元素 类型“实体”必须后跟 任一属性规范,“>” 或“/>”。在 com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(未知 来源)在 com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(未知 来源)在 org.apache.solr.handler.dataimport.DataImporter.loadDataConfig(DataImporter.java:178)

【问题讨论】:

    标签: java xml solr


    【解决方案1】:

    Caused by: org.xml.sax.SAXParseException: Element type "entity" must be followed by either attribute specifications, "&gt;" or "/&gt;"

    您的实体标签未关闭

    【讨论】:

    • Grooveek:现在请在我的 db-data-config.xml 中帮助我。lokk。当我运行命令 java -Dsolr.solr.home="./example-DIH/solr/" -jar start.jar 时,它会索引 tdiamonds 表的 UID_PK 列吗?应该这样,但我没有得到任何索引值跨度>
    • 抱歉,我不是 solr 专家。刚刚发现错字...您应该就这个特定问题提出一个新问题。我想这个已经关闭了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-14
    • 1970-01-01
    • 2012-11-20
    • 2020-10-31
    • 2021-02-04
    相关资源
    最近更新 更多