首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >java.net.ConnectException:连接被拒绝:使用Spring boot连接Solr

java.net.ConnectException:连接被拒绝:使用Spring boot连接Solr
EN

Stack Overflow用户
提问于 2017-01-20 19:39:35
回答 2查看 13.6K关注 0票数 0

我是solr的新手。我正在尝试使用solr spring data tool通过rest调用从表中获取记录。但是当我试图从浏览器请求url时,我得到了以下错误。

代码语言:javascript
复制
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]

我的代码如下所示:

用户对象:

代码语言:javascript
复制
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:

代码语言:javascript
复制
public interface UserDao extends SolrCrudRepository<User, Long> {

}

UserController:

代码语言:javascript
复制
@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文件:

代码语言:javascript
复制
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时,我得到了异常。有人能帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-20 19:50:06

引发java.net.ConnectException: Connection refused: connect异常是因为您的Spring应用程序无法连接到您的Solr服务器。由于您提供的URL,当您在浏览器中打开它时,http://localhost:8983/solr/也不起作用,因此Solr可能没有运行(只要您试图从运行代码的同一主机进行连接,从您的另一个示例URL中看起来是正确的)。

在对应用程序进行任何更改之前,请确保Solr实际正在运行并且能够响应请求。

票数 4
EN

Stack Overflow用户

发布于 2020-04-04 23:22:08

将以下属性添加到application.properties

代码语言:javascript
复制
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41762820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档