2011-11-09 3 views
0

Я пытаюсь импортировать из базы данных, для которой требуется драйвер Sybase для подключения.SOLR & Sybase: ошибка полного импорта DIH

Полный импорт из DIH с данными-конфигурацией:

<dataConfig> 
    <dataSource type="JdbcDataSource" 
     driver="sybase.jdbc4.sqlanywhere.IDriver" 
       url="jdbc:sqlanywhere:eng=dbn;dbn=dbname;links=tcpip{host=10.94.XXX.XX}" 
       user="usr" 
     password="pwd" /> 
    <document name="products"> 
     <entity name="company" pk="id" query="call WS.getFieldsLimited('RU', '2011-10-01', 10)"> 
      <field column="ID" name="crefo" /> 
... 
... 
     </entity> 
    </document> 
</dataConfig> 

терпит неудачу и бросает Exeption

СЕРЬЕЗНЫЙ: Полная Ошибку импорт org.apache.solr.handler.dataimport.DataImportHandlerException: Невозможно выполнить запрос: вызвать WS.getCrefoSearchFieldsLimited ('RU', '2011-10-01', 10) Обработать документ # 1 по адресу org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow (DataImportHandlerException.java:72) at org.apache.solr.handler.dataimport.JdbcDataSource $ Ресул tSetIterator. (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) на org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery (SqlEntityProcessor.java:58) на org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow (SqlEntityProcessor.java:71) в орг .apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow (EntityProcessorWrapper.java:237) at org.apache.solr.handler.dataimport.DocBuilder.buildDocument (DocBuilder.java:357) at org.apache.solr.handler .dataimport.DocBuilder.doFullDump (DocBuilder.java:242) на org.apache.solr.handler.dataimport.DocBuilder.execute (DocBui lder.java:180) at org.apache.solr.handler.dataimport.DataImporter.doFullImport (DataImporter.java:331) at org.apache.solr.handler.dataimport.DataImporter.runCmd (DataImporter.java:389) в org.apache.solr.handler.dataimport.DataImporter $ 1.Run (DataImporter.java:370) Вызванный:. java.lang.NullPointerException в org.apache.solr.handler.dataimport.JdbcDataSource $ ResultSetIterator (JdbcDataSource .java: 251) ... 11

Я использую неправильный URL-адрес или неверную декларацию данных? Я могу получить эту процедуру через клиент sql.

ответ

0

Java был списывание о синтаксисе

(RU', '2011-10-01', 10) 

во второй линии следа. Я предполагаю, что вы имеете в виду авто подсветка синтаксиса

('RU', '2011-10-01', 10) 

переполнению стека в так помочь здесь.

Чтобы быть менее раздраженным с вложением запросов на языке программирования:

  1. попробовать запрос в качестве переводчика (если Sybase есть) перед вложением
  2. выписывать запросы в текстовом редакторе, который поддерживает подсветка синтаксиса для языка запросов
  3. быть в курсе экранирующих символов для вашего языка запросов (% чч ускользает символов в URL-адресов, \ ускользает символов в SQL)
  4. использование форматирования строк и многострочные строки функции, поддерживаемые вашим языком

-Кто-то, кто провел первые четыре месяца своей карьеры, выполняя (помимо прочего) запросы SQL и Solr в Python и PHP.

+0

Извините, это просто очерк здесь, в пост-отредактированном виде. У меня есть этот apostrof в data-config.xml – dzendzula

+0

Пробовал ли вы копировать этот запрос в интерпретатор запросов Sysbase? – aitchnyu

Смежные вопросы