0 Replies Latest reply: Dec 20, 2012 1:15 AM by Battlefield RSS

    Shipped drivers and DIH

    Battlefield Community Member

      We want to test DIH in Solr connecting to a MS SQL Server.

       

      First we followed the steps described in the Help section "Indexing using Data import Handler" (http://help.adobe.com/en_US/ColdFusion/10.0/Developing/WSe61e35da8d318518-1acb57941353e8b4 f85-7ffd.html).

      For connecting to MS SQL we would definitely prefer to use those drivers shipped with CF. As far as we could find our, for MS SQL this is the Macromedia Driver, so we switched the settings in data-config.xml to:

      driver="macromedia.jdbc.MacromediaDriver" url="jdbc:macromedia:sqlserver://foo:1433;databaseName=bar"

      We also added a lib/-subfolder into the folder of the corresponding collection where we did put the macromedia_drivers.jar so Solr could find the driver.

      However, executing a fullimport fails.

      SCHWERWIEGEND: Exception while processing: Mandator document : SolrInputDocument[{}]:org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: select *  from Mandators Processing Document # 1

          at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHand lerException.java:72)

          at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource .java:253)

          at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210)

          at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39)

          at org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery(SqlEntityProcessor.java:5 9)

          at org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73)

          at org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper. java:238)

          at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:596)

          at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:268)

          at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:187)

          at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:359)

          at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:427)

          at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:408)

      Caused by: macromedia.jdbc.MacromediaDriver$InvalidLicenseException: Der Gebrauch der Macromedia JDBC-Treiber ist eingeschrдnkt. Die Treiber dьrfen nur mit Macromedia-Serverprodukten verwendet werden. Prьfen Sie bitte, ob Ihre Lizenz die erforderlichen Treiber unterstьtzt.

          at macromedia.jdbc.MacromediaDriver.unlock(Unknown Source)

          at macromedia.jdbc.MacromediaDriver.connect(Unknown Source)

          at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:161)

          at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:128)

          at org.apache.solr.handler.dataimport.JdbcDataSource.getConnection(JdbcDataSource.java:363)

          at org.apache.solr.handler.dataimport.JdbcDataSource.access$200(JdbcDataSource.java:39)

          at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource .java:240)

          ... 11 more

      Which indicates insufficient license priveliges.

      We are running ColdFusion 10,282462 Developer Edition on Windows 7. We can successfully connect to the same database within our CF-apps and thus would have expected new DIH-actions of cfindex should be able to connect to the same databases with the same shipped drivers, too.

       

      Anyone any thoughts how to fix this issue?