[RASSUS] 3. laboratorijska vježba - 2021/2022
tata
Cvija jel ti baca ono da ne moze ucitat bean?
Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'unit' in value "${unit}"
Ovak sam ucitavao prije dockera (i radilo je), sad mi s dockerom ne radi to
Cvija
NISAM ASISTENT Nope, baca mi ovo
[]
org.springframework.cloud.config.client.ConfigClientFailFastException: Could not locate PropertySource and the resource is not optional, failing
at org.springframework.cloud.config.client.ConfigServerConfigDataLoader.doLoad(ConfigServerConfigDataLoader.java:193)
Onda malo ispod mi baca ovo
Caused by: org.springframework.web.client.ResourceAccessException: I/O error on GET request for "http://localhost:8888/application/default": Connection refused (Conne
ction refused); nested exception is java.net.ConnectException: Connection refused (Connection refused)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:785)
A stvar je da naravno, izvan kontejnera mogu učitati sve i ovo je dostupno http://localhost:8888/application/default
A gdje ti se nalazi git repozitorij s kojeg čitaš konfiguraciju?
Gussy
Cvija jel ti radi spajanje servisa na eureku?
tata
na gitlabu
ti radis request na http://localhost:8888/application/default i onda parsiras unit?
Cvija
huba buba Temperature i Humidity se spoje da, eureka ih očita
Gussy
Cvija kad pokrenes taj config docker container, jel mozes dobiti taj .yml file kad upises http://localhost:8888/application/default
Cvija
huba buba Mogu. dobijem koji je unit i sve
Ovako izgleda
{"name":"application","profiles":["default"],"label":null,"version":"3b6b307e8d18706bd216df2069b447cfdd710275","state":null,"propertySources":[{"name":"https://gitlab.com/username/config.git/application.yml","source":{"unit":"C"}}]}
Gussy
Cvija mislio sam da je problem sto se spajas na localhost:8888 u docker containeru, a docker containeri dobiju vlastite ip adrese unutar te microservices mreze, ali ti radi spajanje na eureku pa mi nije nista vise jasno
Cvija
huba buba Vidiš, kad pokrenem bilo što u kontejneru, to mogu otvoriti s localhost, valjda je to zato što sam exposao portove
ma ne znam ni ja više, samo da mi je završiti ovaj labos
Gussy
Cvija mislim da ces morati namjestiti statičku ip adresu u docker-compose fileu za taj config server i onda izmijeniti u kodu od aggregatora da se umjesto na localhost:8888 spaja na tu staticku ip adresu
https://docs.docker.com/compose/compose-file/compose-file-v2/#ipv4_address-ipv6_address
onda neces morati stvarati network zasebnom naredbom van docker-compose filea
Cvija
NISAM ASISTENT Kako misliš parsiraš unit?
Koliko sam ja to sve shvatio, taj application.yml koji se nalazi na gitu se pročita i taj unit je automatski parsiran, to je ista fora kao da u lokalnom application.yml postoji unit varijabla
Cvija
huba buba znači li to da moram za svaki servis napraviti statičku ip adresu?
Nocna_smjena
Jel treba predat iako ne namjeravam rijesit labos? I dal trebam demonstrirat (iako neznam sto imam za demonstrirat)?
Cvija
Nocna_smjena Ne trebaš ni jedno ni drugo, tako sam napravio za drugi labos i samo dobio nula bodova
vidraKida
laranotreallycroft di si to stavio u koji dio projeka?
u kontroler ili?
laranotreallycroft
Ζ ε ύ ς da
Cvija
WP_Deva
Koji su mi sve dependecyiji za senzore?
Cvija
IdeGas Ovako mi izgleda build.gradle
za Temperature-microservice, slično je i za humidity, ako to pitaš
[]
plugins {
id 'org.springframework.boot' version '2.5.5'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id 'eclipse'
id 'idea'
}
group = 'ime_paketa'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
// Za Eureku
ext {
set('springCloudVersion', "2021.0.0")
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'com.opencsv:opencsv:5.5.2'
implementation 'org.springframework.boot:spring-boot-starter-hateoas'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'com.h2database:h2'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
// Eureka client
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign'
}
// za Eureku
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
test {
useJUnitPlatform()
}
WP_Deva
Cvija Hvala tii
RogerRoger
Cvija možeš na svaki referirati preko imena docker kontejnera, kao http://<ime-kontejnera>:<exposeani-port>
Tako sam ja napravio povezivanje s konfiguracijskim i Eureka serverom, a agregator ostale mikroservise zove preko Eureke