2014-11-04 3 views
1

У любого есть решение для недопустимого файла spring-data-elasticsearch.xsd?Ошибка проверки XSD в spring-data-elasticsearch

http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch.xsd

Я пытаюсь загрузить этот XML-файл:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:elasticsearch="http://www.springframework.org/schema/data/elasticsearch" 
    xsi:schemaLocation="http://www.springframework.org/schema/data/elasticsearch http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch.xsd"> 

    <elasticsearch:transport-client id="ElasticSearchClient" cluster-nodes="localhost:9300" /> 

    <bean name="elasticsearchTemplate" class="org.springframework.data.elasticsearch.core.ElasticsearchTemplate"> 
     <constructor-arg name="client" ref="ElasticSearchClient" /> 
    </bean> 
</beans> 

Но им получать эти ошибки:

Caused by: org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch.xsd; lineNumber: 40; columnNumber: 116; s4s-att-invalid-value: Invalid attribute value for 'source' in element 'documentation': cvc-datatype-valid.1.2.1. 

я нашел некоторые вопросы об этом, но никто не имеет решения для этого. И невозможно создать проблему с ошибкой в ​​проекте GitHub.

Благодаря Marcel

ответ

0

Я думаю, что его не представляется возможным использовать XSD без проблем. из-за этого я создаю для этого конфигурационный компонент.

package org.example; 

import org.elasticsearch.client.Client; 
import org.elasticsearch.client.transport.TransportClient; 
import org.elasticsearch.common.transport.InetSocketTransportAddress; 
import org.springframework.context.annotation.Bean; 
import org.springframework.context.annotation.Configuration; 
import org.springframework.data.elasticsearch.core.ElasticsearchOperations; 
import org.springframework.data.elasticsearch.core.ElasticsearchTemplate; 

@Configuration 
class ElasticsearchConfiguration 
{ 
    @Bean(name="elasticsearchTemplate") 
    public ElasticsearchOperations elasticsearchTemplate() 
    { 
     Client client = new TransportClient().addTransportAddress(new InetSocketTransportAddress("127.0.0.1", 9300));  
     return new ElasticsearchTemplate(client); 
    } 
} 

, который работает для меня ....

Марсель

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