2017-01-20 6 views
0

Я новичок в solr. Я пытаюсь получить запись из таблицы, используя вызов rest, используя инструмент данных весны solr. Но когда я пытаюсь запросить url из браузера, я получаю следующую ошибку.java.net.ConnectException: Connection отказано: connect Solr with Spring boot

java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) ~[na:1.8.0_25] 
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) ~[na:1.8.0_25] 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345) ~[na:1.8.0_25] 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_25] 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_25] 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) ~[na:1.8.0_25] 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_25] 
    at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_25] 

Мой код вроде как: Object

Пользователь:

public class User { 

    @Field 
    private String id; 

    @Field 
    private String fName; 

    @Field 
    private String lName; 

    public String getId() { 
     return id; 
    } 

    public void setId(String id) { 
     this.id = id; 
    } 

    public String getfName() { 
     return fName; 
    } 

    public void setfName(String fName) { 
     this.fName = fName; 
    } 

    public String getlName() { 
     return lName; 
    } 

    public void setlName(String lName) { 
     this.lName = lName; 
    } 
} 

UserDao:

public interface UserDao extends SolrCrudRepository<User, Long> { 

} 

UserController:

@RestController 
@RequestMapping("/app/api") 
public class UserController { 

    @Autowired 
    private UserDao userDao; 

    @RequestMapping(value = "/users", method = RequestMethod.GET) 
    public AjaxResponse loadAll() throws IOException { 

     List<User> users = (List<User>) userDao.findAll(); 
     return new AjaxResponse("Success", false, users); 
    } 
} 

Aplication.properties файл:

server.port=9111 

spring.datasource.driver-class-name=com.mysql.jdbc.Driver 
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/solrDatabase?autoReconnect=true 
spring.datasource.username=root 
spring.datasource.password=root 

spring.data.solr.host=http://localhost:8983/solr/ 
spring.data.solr.repositories.enabled=true 

Когда я пытаюсь запросить этот URL: http://localhost:9111/app/api/users Тогда я получаю исключение. Может кто-нибудь мне помочь.

+0

Есть ли http: // localhost: 8983/solr/работать в вашем браузере? – MatsLindh

+0

Нет, http: // localhost: 8983/solr/не работает. –

ответ

2

Исключение составляет java.net.ConnectException: Connection refused: connect, потому что приложение Spring не может подключиться к вашему серверу Solr. Поскольку URL-адрес, который вы указали, http://localhost:8983/solr/ не работает, когда вы открываете его в браузере, Solr, вероятно, не работает (пока вы пытаетесь подключиться с того же хоста, что и код, из вашего другого примера URL-адрес кажется правдой).

Убедитесь, что Solr действительно работает и может отвечать на запросы перед внесением любых изменений в ваше приложение.

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

  • Нет связанных вопросов^_^