JSONException с использованием Netflix Eureka

Я новичок в Netflix Eureka и SpringBoot. Я построил очень простые сервер и клиент Eureka, чтобы увидеть, как они работают вместе с точки зрения обнаружения. Сервер Eureka загружается нормально, так как я вижу пользовательский интерфейс при переходе на localhost: 8761 /

Я запускаю эти два экземпляра с помощью Eclipse Tomcat.

Созданный мной клиент Eureka не содержит кода, поскольку он запускает только приложение SpringBoot с соответствующими аннотациями. То же самое и с сервером Eureka.

Когда я запускаю клиент, после запуска сервера я получаю следующие стеки. Я пробежался по Интернету, чтобы получить объяснения, но не нашел. Вы знаете, что вызывает эти исключения JSONObject?

Стек на стороне сервера: http://pastebin.ca/2968955

Стек на стороне клиента: http://pastebin.ca/2968957

Вот код, который у меня есть:

EurekaServer.java:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaServer {
		public static void main( String[] args ) {
    	    SpringApplication.run(EurekaServer.class, args);
    }
}

Application.yml EurekaServer:

spring:
  application:
    name: EurekaServer

server:
  port: 8761

eureka:
  instance:
    hostname: localhost
  client:
    registerWithEureka: false
    festRegistry: false
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

EurekaClientApp.java:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@EnableEurekaClient
@RestController
public class EurekaClientApp {
	public static void main(String[] args) {
		SpringApplication.run(EurekaClientApp.class, args);
	}
}

Application.yml EurekaClient:

spring:
  application:
    name: EurekaClient
    
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/
    registerWithEureka: true
    fetchRegistry: false
  instance:
    leaseRenewalIntervalInSeconds: 10
    metadataMap:
      instanceId: ${spring.application.name}:${spring.application.instance_id:${random.value}}

server:
  port: 8188

eureka-client.properties:

eureka.port=8188
eureka.vipAddress=productservice.mydomain.net
eureka.preferSameZone=true
eureka.shouldUseDns=false
eureka.availabilityZones=default
eureka.serviceUrl.defaultZone=http://localhost:8761/eureka/


person clopes    schedule 07.04.2015    source источник


Ответы (1)


Итак, после нескольких часов неудачных попыток заставить его работать, изменив код, я просмотрел файл pom.xml и удалил зависимости, которые были связаны с этой частью приложения. И я положил их обратно, один за другим, проверяя модификации, которые они будут делать, и я обнаружил, что у меня была неправильная зависимость относительно eureka, поскольку я заменил тот, который у меня был, например. com.netflix.eureka предоставленным springboot, например spring-cloud-starter-eureka.

person clopes    schedule 09.04.2015