Giter Site home page Giter Site logo

asc-lab / dotnetcore-microservices-poc Goto Github PK

View Code? Open in Web Editor NEW
1.9K 143.0 675.0 2.93 MB

Very simplified insurance sales system made in a microservices architecture using .NET Core

Home Page: https://www.altkomsoftware.com/blog/building-microservices-net-core-part-1-plan/

License: Apache License 2.0

C# 33.26% Dockerfile 0.99% Batchfile 0.13% JavaScript 16.64% HTML 5.53% Vue 5.10% Java 0.05% Shell 0.15% CSS 38.16%
netcore dotnet-core microservices insurance ddd cqrs microservices-architecture mediatr rabbitmq nhibernate

dotnetcore-microservices-poc's Introduction

ASCLAB .NET Core PoC - LAB Insurance Sales Portal

BuiltWithDot.Net shield

This is an example of a very simplified insurance sales system made in a microservice architecture using:

  • .NET 7
  • Entity Framework Core
  • MediatR
  • Marten
  • Eureka
  • Ocelot
  • JWT Tokens
  • RestEase
  • RawRabbit
  • NHibernate
  • Polly
  • NEST (ElasticSearch client)
  • Dapper
  • DynamicExpresso
  • SignalR

Comprehensive guide describing the architecture, applied design patterns and technologies can be found on our blog:

Other articles around microservices that could be interesting:

Business Case

We are going to build very simplified system for insurance agents to sell various kind of insurance products. Insurance agents will have to log in and system will present them with list of products they can sell. Agents will be able to view products and find a product appropriate for their customers. Then they can create an offer and system will calculate a price based on provided parameters.
Finally agent will be able to confirm the sale by converting offer to policy and printing pdf certificate.
Portal will also give them ability to search and view offer and policies.
Portal will also have some basic social network features like chat for agents.
Latest feature is a business dashboard that displays sales stats using ElasticSearch Aggregations and ChartJS.

Architecture overview

NET Microservices Architecture

  • Web - a VueJS Single Page Application that provides insurance agents ability to select appropriate product for their customers, calculate price, create an offer and conclude the sales process by converting offer to policy. This application also provides search and view functions for policies and offers. Frontend talks to backend services via agent-portal-gateway.

  • Agent Portal API Gateway - is a special microservice whose main purpose it to hide complexity of the underlying back office services structure from client application. Usually we create a dedicated API gateway for each client app. In case in the future we add a Xamarin mobile app to our system, we will need to build a dedicated API gateway for it. API gateway provides also security barrier and does not allow unauthenticated request to be passed to backend services. Another popular usage of API gateways is content aggregation from multiple services.

  • Auth Service - a service responsible for users authentication. Our security system will be based on JWT tokens. Once user identifies himself correctly, auth service issues a token that is further use to check user permission and available products.

  • Chat Service - a service that uses SignalR to give agents ability to chat with each other.

  • Payment Service - main responsibilities: create Policy Account, show Policy Account list, register in payments from bank statement file.
    This module is taking care of a managing policy accounts. Once the policy is created, an account is created in this service with expected money income. PaymentService also has an implementation of a scheduled process where CSV file with payments is imported and payments are assigned to policy accounts. This component shows asynchronous communication between services using RabbitMQ and ability to create background jobs. It also features accessing database using Dapper.

  • Policy Service - creates offers, converts offers to insurance policies.
    In this service we demonstrated usage of CQRS pattern for better read/write operation isolation. This service demonstrates two ways of communication between services: synchronous REST based calls to PricingService through HTTP Client to get the price, and asynchronous event based using RabbitMQ to publish information about newly created policies. In this service we also access RDBMS using NHibernate.

  • Policy Search Service - provides insurance policy search.
    This module listens for events from RabbitMQ, converts received DTOs to “read model” and indexes given model in ElasticSearch to provide advanced search capabilities.

  • Pricing Service - a service responsible for calculation of price for given insurance product based on its parametrization.
    For each product a tariff should be defined. The tariff is a set of rules on the basis of which the price is calculated. DynamicExpresso was used to parse the rules. During the policy purchase process, the PolicyService connects with this service to calculate a price. Price is calculated based on user’s answers for defined questions.

  • Product Service - simple insurance product catalog.
    It provides basic information about each insurance product and its parameters that can be customized while creating an offer for a customer.

  • Document Service - this service uses JS Report to generate pdf certificates.

  • Dashboard Service - Dashboard that presents sales statistics.
    Business dashboards that presents our agents sales results. Dashboard service subscribes to events of selling policies and index sales data in ElasticSearch. Then ElasticSearch aggregation framework is used to calculate sales stats like: total sales and number of policies per product per time period, sales per agent in given time period and sales timeline. Sales stats are nicely visualized using ChartJS.

Each business microservice has also .Api project (PaymentService.Api, PolicyService.Api etc.), where we defined commands, events, queries and operations and .Test project (PaymentService.Test, PolicyService.Test) with unit and integration tests.

Running with Docker

You must install Docker & Docker Compose before.
Scripts have been divided into two parts:

  • infra.yml runs the necessary infrastructure.
  • app.yml is used to run the application.

You can use scripts to build/run/stop/down all containers.

To run the whole solution:

./infra-run.sh
./app-run.sh

If ElasticSearch fails to start, try running sudo sysctl -w vm.max_map_count=262144 first

Once the application and infrastructure are started you can open http://localhost:8080 in your browser and see our welcome page. Once there you can use Account menu item to log into the system. Valid users and passwords can be found here. You can for example login as admin with password admin.

Manual running

Prerequisites

Install PostgreSQL version >= 10.0.

Install RabbitMQ.

Install Elasticsearch version >= 6.

Init databases

Windows

cd postgres
"PATH_TO_PSQL.EXE" --host "localhost" --port EXAMPLE_PORT --username "EXAMPLE_USER" --file "createdatabases.sql"

In my case this command looks like:

cd postgres
"C:\Program Files\PostgreSQL\9.6\bin\psql.exe" --host "localhost" --port 5432 --username "postgres" --file "createdatabases.sql"

Linux

sudo -i -u postgres
psql --host "localhost" --port 5432 --username "postgres" --file "PATH_TO_FILE/createdatabases.sql"

This script should create lab_user user and the following databases: lab_netmicro_payments, lab_netmicro_jobs, lab_netmicro_policy and lab_netmicro_pricing.

Run Eureka

Service registry and discovery tool for our project is Eureka. It is included in the project. In order to start it open terminal / command prompt.

cd eureka-server
./gradlew.[bat] bootRun

This should start Eureka and you should be able to go to http://localhost:8761/ and see Eureka management panel.

Build

Build all projects from command line without test:

Windows

cd scripts
build-without-tests.bat

Linux

cd scripts
./build-without-tests.sh

Build all projects from command with test:

Windows

cd scripts
build.bat

Linux

cd scripts
./build.sh

Run specific service

Go to folder with specific service (PolicyService, ProductService etc) and use dotnet run command.

dotnetcore-microservices-poc's People

Contributors

corstiaan84 avatar ewelinapolska avatar odidev avatar pawellaszewski avatar priyankpat avatar timhess avatar tugrulelmas avatar tungbq avatar wesleimp avatar witek1902 avatar wojteksuwala avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dotnetcore-microservices-poc's Issues

Pricing service tests failing

PriceForTravelPolicyIsCorrect and CommandIsProperlyValidated are failing.

Error Message:
System.Net.Internals.SocketExceptionFactory+ExtendedSocketException : Cannot assign requested address [::1]:5432

Getting error when trying to run the application - configuration

Hi, This is not issue. I need help to running the application on my local machine after I have cloned it from git. I have windows 10 and Docker Desktop.

I have followed all the steps mentioned to configure the application and run it. I have installed PostgresSQL and ran the DbScripts to create the databases and users.
I have build the application without any errors.
But when I run "docker-compose -f app.yml up -d" command I am getting "ERROR: build path C:\Study\Projects\Microservice-poc\policy-service either does not exist, is not accessible, or is not a valid URL."

Where can I find the guide or document to run the application?

Basic issue Package are missing

I am a new developer for learning, growing up and personal project purposes,
I successfully cloned this interesting example of micro services architecture and the running fail.
188 Error, 7 warning and 90% or issue are about :
Package XXXX not found. Directive seems missing.
Some one can help me by solving one of list ?
ie: Unable to find package 'PackageId'. No packages exist with this id in source(s): 'sourceA', 'sourceB', 'sourceC'
regards

Business dashboard

Creata a dashboard component that displays sales statistics.
Use ElasticSearch Aggregation Framework to gather and query data.
Create a new microservice that will collect sales data by subscribing to events emmited from policy micro service.

Article not found

Hello,

I have started reading Your article on Microservice but there is no any article of part 1 to 6 found as per given Link.

can You please help Me on this.. as this will be really useful for Me.

Thanks In Advance,

Eureka is not starting

Hi,
I'm trying to run the project, but Eureka doesn't work. I get the following error, can you help?

My os: MacOS Mojave

  • i'm try : mvnw spring-boot:run or mvn spring-boot:run

getting this error

(full result https://paste.ofcode.org/XKixDgQfn8XBAxjNC2Mu6c )

[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------------< org.demo:eureka >---------------------------
[INFO] Building Eureka Server 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] >>> spring-boot-maven-plugin:2.0.2.RELEASE:run (default-cli) > test-compile @ eureka >>>
[INFO] 
[INFO] --- git-commit-id-plugin:2.2.3:revision (default) @ eureka ---
[INFO] dotGitDirectory /Users/mesutpiskin/Desktop/WORK/dotnetcore-microservices-poc/.git
[INFO] git.build.user.name 
[INFO] git.build.user.email 
[INFO] git.branch master
[INFO] --always = true
[INFO] --dirty = -dirty
[INFO] --abbrev = 7
[INFO] Tag refs [[]]
[INFO] Created map: [{}]
[INFO] HEAD is [d9c02a560aa43b4ba664899c52ab77242a511020]
[INFO] git.commit.id.describe d9c02a5-dirty
[INFO] git.commit.id d9c02a560aa43b4ba664899c52ab77242a511020
[INFO] git.commit.id.abbrev d9c02a5
[INFO] git.dirty true
[INFO] git.commit.user.name Robert Witkowski
[INFO] git.commit.user.email [email protected]
[INFO] git.commit.message.full Update README.md
[INFO] git.commit.message.short Update README.md
[INFO] git.commit.time 2019-04-15T09:43:08+0300
[INFO] git.remote.origin.url https://github.com/asc-lab/dotnetcore-microservices-poc.git
[INFO] git.tags 
[INFO] Tag refs [[]]
[INFO] git.closest.tag.name 
[INFO] Tag refs [[]]
[INFO] git.closest.tag.commit.count 
[INFO] git.build.time 2019-06-20T16:06:54+0300
[INFO] git.build.version 0.0.1-SNAPSHOT
[INFO] git.build.host Mesuts-MacBook-Pro.local
[INFO] git.commit.id.describe-short d9c02a5-dirty
[INFO] found property git.tags
[INFO] found property git.closest.tag.commit.count
[INFO] found property git.build.version
[INFO] found property git.commit.user.name
[INFO] found property git.commit.id.abbrev
[INFO] found property git.branch
[INFO] found property git.build.host
[INFO] found property git.commit.id.describe-short
[INFO] found property git.commit.id.describe
[INFO] found property git.build.user.email
[INFO] found property git.commit.id
[INFO] found property git.commit.message.short
[INFO] found property git.commit.user.email
[INFO] found property git.closest.tag.name
[INFO] found property git.commit.time
[INFO] found property git.build.time
[INFO] found property git.build.user.name
[INFO] found property git.dirty
[INFO] found property git.commit.message.full
[INFO] found property git.remote.origin.url
[INFO] Reading existing properties file [/Users/mesutpiskin/Desktop/WORK/dotnetcore-microservices-poc/eureka/target/classes/git.properties] (for module Eureka Server)...
[INFO] Properties file [/Users/mesutpiskin/Desktop/WORK/dotnetcore-microservices-poc/eureka/target/classes/git.properties] is up-to-date (for module Eureka Server)...
[INFO] 
[INFO] --- maven-resources-plugin:3.0.1:resources (default-resources) @ eureka ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.7.0:compile (default-compile) @ eureka ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:3.0.1:testResources (default-testResources) @ eureka ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/mesutpiskin/Desktop/WORK/dotnetcore-microservices-poc/eureka/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.7.0:testCompile (default-testCompile) @ eureka ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] <<< spring-boot-maven-plugin:2.0.2.RELEASE:run (default-cli) < test-compile @ eureka <<<
[INFO] 
[INFO] 
[INFO] --- spring-boot-maven-plugin:2.0.2.RELEASE:run (default-cli) @ eureka ---
2019-06-20 16:07:01.198  INFO 14969 --- [           main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@7ce36edd: startup date [Thu Jun 20 16:07:01 EET 2019]; root of context hierarchy
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.springframework.cglib.core.ReflectUtils$1 (file:/var/root/.m2/repository/org/springframework/spring-core/5.0.6.RELEASE/spring-core-5.0.6.RELEASE.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2019-06-20 16:07:01.503  INFO 14969 --- [           main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-06-20 16:07:01.543  INFO 14969 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$62f75cc2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.0.2.RELEASE)

2019-06-20 16:07:01.799  INFO 14969 --- [           main] c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at : http://localhost:8888
2019-06-20 16:07:01.904  INFO 14969 --- [           main] c.c.c.ConfigServicePropertySourceLocator : Connect Timeout Exception on Url - http://localhost:8888. Will be trying the next url if available
2019-06-20 16:07:01.904  WARN 14969 --- [           main] c.c.c.ConfigServicePropertySourceLocator : Could not locate PropertySource: I/O error on GET request for "http://localhost:8888/eureka/default": Connection refused (Connection refused); nested exception is java.net.ConnectException: Connection refused (Connection refused)
2019-06-20 16:07:01.907  INFO 14969 --- [           main] eurekademo.EurekaApplication             : No active profile set, falling back to default profiles: default
2019-06-20 16:07:01.926  INFO 14969 --- [           main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@55c52a01: startup date [Thu Jun 20 16:07:01 EET 2019]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@7ce36edd
2019-06-20 16:07:02.876  INFO 14969 --- [           main] o.s.cloud.context.scope.GenericScope     : BeanFactory id=b483a0cb-5386-3f20-8e7d-f11faff7402a
2019-06-20 16:07:02.896  INFO 14969 --- [           main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-06-20 16:07:02.992  INFO 14969 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$62f75cc2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-06-20 16:07:03.232  INFO 14969 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8762 (http)
2019-06-20 16:07:03.263  INFO 14969 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-06-20 16:07:03.264  INFO 14969 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.31
2019-06-20 16:07:03.274  INFO 14969 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener   : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/Users/mesutpiskin/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.]
2019-06-20 16:07:03.355  INFO 14969 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-06-20 16:07:03.355  INFO 14969 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1429 ms
2019-06-20 16:07:03.608  WARN 14969 --- [ost-startStop-1] c.n.c.sources.URLConfigurationSource     : No URLs will be polled as dynamic configuration sources.
2019-06-20 16:07:03.608  INFO 14969 --- [ost-startStop-1] c.n.c.sources.URLConfigurationSource     : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
2019-06-20 16:07:03.625  INFO 14969 --- [ost-startStop-1] c.netflix.config.DynamicPropertyFactory  : DynamicPropertyFactory is initialized with configuration sources: com.netflix.config.ConcurrentCompositeConfiguration@4c7e1e95
2019-06-20 16:07:04.474  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2019-06-20 16:07:04.474  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2019-06-20 16:07:04.475  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2019-06-20 16:07:04.475  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2019-06-20 16:07:04.475  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpTraceFilter' to: [/*]
2019-06-20 16:07:04.475  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'webMvcMetricsFilter' to: [/*]
2019-06-20 16:07:04.475  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'servletContainer' to urls: [/eureka/*]
2019-06-20 16:07:04.476  INFO 14969 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Servlet dispatcherServlet mapped to [/]
2019-06-20 16:07:04.565  INFO 14969 --- [ost-startStop-1] c.s.j.s.i.a.WebApplicationImpl           : Initiating Jersey application, version 'Jersey: 1.19.1 03/11/2016 02:08 PM'
2019-06-20 16:07:04.627 ERROR 14969 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Exception starting filter [servletContainer]

java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present
        at java.base/sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117) ~[na:na]
        at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125) ~[na:na]
        at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:na]
        at java.base/sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68) ~[na:na]
        at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138) ~[na:na]
        at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[na:na]
        at java.base/sun.reflect.generics.repository.ClassRepository.computeSuperInterfaces(ClassRepository.java:117) ~[na:na]
        at java.base/sun.reflect.generics.repository.ClassRepository.getSuperInterfaces(ClassRepository.java:95) ~[na:na]
        at java.base/java.lang.Class.getGenericInterfaces(Class.java:1143) ~[na:na]
        at com.sun.jersey.core.reflection.ReflectionHelper.getClass(ReflectionHelper.java:629) ~[jersey-core-1.19.1.jar:1.19.1]
        at com.sun.jersey.core.reflection.ReflectionHelper.getClass(ReflectionHelper.java:625) ~[jersey-core-1.19.1.jar:1.19.1]
        at com.sun.jersey.core.spi.factory.ContextResolverFactory.getParameterizedType(ContextResolverFactory.java:202) ~[jersey-core-1.19.1.jar:1.19.1]
        at com.sun.jersey.core.spi.factory.ContextResolverFactory.init(ContextResolverFactory.java:89) ~[jersey-core-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1332) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl.access$700(WebApplicationImpl.java:180) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:799) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:795) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193) ~[jersey-core-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:795) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:790) ~[jersey-server-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:509) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:339) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:605) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:744) ~[jersey-servlet-1.19.1.jar:1.19.1]
        at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:112) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4637) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5282) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1421) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1411) ~[tomcat-embed-core-8.5.31.jar:8.5.31]
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
        at java.base/java.lang.Thread.run(Thread.java:835) ~[na:na]
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBContext
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:436) ~[na:na]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[na:na]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[na:na]
        at java.base/java.lang.Class.forName0(Native Method) ~[na:na]
        at java.base/java.lang.Class.forName(Class.java:415) ~[na:na]
        at java.base/sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114) ~[na:na]
        ... 36 common frames omitted

2019-06-20 16:07:04.628 ERROR 14969 --- [ost-startStop-1] o.apache.catalina.core.StandardContext   : One or more Filters failed to start. Full details will be found in the appropriate container log file
2019-06-20 16:07:04.629 ERROR 14969 --- [ost-startStop-1] o.apache.catalina.core.StandardContext   : Context [] startup failed due to previous errors
2019-06-20 16:07:04.634  WARN 14969 --- [ost-startStop-1] o.a.c.loader.WebappClassLoaderBase       : The web application [ROOT] appears to have started a thread named [spring.cloud.inetutils] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
 [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
 [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
 [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
 [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
 [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
 [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
 [email protected]/java.lang.Thread.run(Thread.java:835)
2019-06-20 16:07:04.733  INFO 14969 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
2019-06-20 16:07:04.741  WARN 14969 --- [           main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
2019-06-20 16:07:04.752  INFO 14969 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2019-06-20 16:07:04.755 ERROR 14969 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:155) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:544) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at eurekademo.EurekaApplication.main(EurekaApplication.java:17) ~[classes/:na]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
        at java.base/java.lang.reflect.Method.invoke(Method.java:567) ~[na:na]
        at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:496) ~[na:na]
        at java.base/java.lang.Thread.run(Thread.java:835) ~[na:na]
Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
        at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:126) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.<init>(TomcatWebServer.java:86) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:409) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:174) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:179) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:152) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        ... 14 common frames omitted
Caused by: java.lang.IllegalStateException: StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[] failed to start
        at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.rethrowDeferredStartupExceptions(TomcatWebServer.java:172) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:110) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
        ... 19 common frames omitted

[WARNING] 
java.lang.reflect.InvocationTargetException
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:567)
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run (AbstractRunMojo.java:496)
    at java.lang.Thread.run (Thread.java:835)
Caused by: org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh (ServletWebServerApplicationContext.java:155)
    at org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:544)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh (ServletWebServerApplicationContext.java:140)
    at org.springframework.boot.SpringApplication.refresh (SpringApplication.java:759)
    at org.springframework.boot.SpringApplication.refreshContext (SpringApplication.java:395)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:327)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1255)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1243)
    at eurekademo.EurekaApplication.main (EurekaApplication.java:17)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:567)
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run (AbstractRunMojo.java:496)
    at java.lang.Thread.run (Thread.java:835)
Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize (TomcatWebServer.java:126)
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.<init> (TomcatWebServer.java:86)
    at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer (TomcatServletWebServerFactory.java:409)
    at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer (TomcatServletWebServerFactory.java:174)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer (ServletWebServerApplicationContext.java:179)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh (ServletWebServerApplicationContext.java:152)
    at org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:544)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh (ServletWebServerApplicationContext.java:140)
    at org.springframework.boot.SpringApplication.refresh (SpringApplication.java:759)
    at org.springframework.boot.SpringApplication.refreshContext (SpringApplication.java:395)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:327)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1255)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1243)
    at eurekademo.EurekaApplication.main (EurekaApplication.java:17)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:567)
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run (AbstractRunMojo.java:496)
    at java.lang.Thread.run (Thread.java:835)
Caused by: java.lang.IllegalStateException: StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[] failed to start
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.rethrowDeferredStartupExceptions (TomcatWebServer.java:172)
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize (TomcatWebServer.java:110)
    at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.<init> (TomcatWebServer.java:86)
    at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer (TomcatServletWebServerFactory.java:409)
    at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer (TomcatServletWebServerFactory.java:174)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer (ServletWebServerApplicationContext.java:179)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh (ServletWebServerApplicationContext.java:152)
    at org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:544)
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh (ServletWebServerApplicationContext.java:140)
    at org.springframework.boot.SpringApplication.refresh (SpringApplication.java:759)
    at org.springframework.boot.SpringApplication.refreshContext (SpringApplication.java:395)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:327)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1255)
    at org.springframework.boot.SpringApplication.run (SpringApplication.java:1243)
    at eurekademo.EurekaApplication.main (EurekaApplication.java:17)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:567)
    at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run (AbstractRunMojo.java:496)
    at java.lang.Thread.run (Thread.java:835)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  11.628 s
[INFO] Finished at: 2019-06-20T16:07:04+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.0.2.RELEASE:run (default-cli) on project eureka: An exception occurred while running. null: InvocationTargetException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat: StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[] failed to start -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

Unable to run Vue application after running the docker compose.

Hi Team,

I am unable to view the UI for the application after running the infra and app run scipts.
On the service registry all the services are up and running but if I try to access the Vue application using the URLs mentioned in the .env file it is unable to connect to the localhost.
Could you explain the way to run the application??

Links not working

Hello, this is not a code related issue, but the links seem to be unavailable. Are there some new links that can be shared? Thank you.

Build agent sales stats module

Create a new microservice responsible for gathering agent sales stats. Stats will be updated based on events send from policy service. Each time a policy is sold / terminated we update agent sold policies data in elasticsearch.
We use elasticsearch aggregation framework to build complex queries like: sales per product in time, or sales distribution, top agents list etc.

Run dotnetcore-microservices on both arm64 and x86_64 platforms.

Hi team,

I have tried to deploy services by using docker-compose without any changes in any file but it is failing with some error on arm64 and x86 so I have modified the below files :

For Arm64: I have modified Web/Dockerfile


- RUN npm install 

+ RUN apk add --no-cache ffmpeg opus pixman cairo pango giflib ca-   certificates \ 

&& apk add --no-cache --virtual .build-deps python g++ make gcc .build-deps curl git pixman-dev cairo-dev pangomm-dev libjpeg-turbo-dev giflib-dev \ 

&& npm install 


- RUN dotnet test --verbosity:normal 

+ RUN RUN dotnet test '--logger:console;verbosity=minimal' --verbosity quiet –filter FooBar 

and Productservice/Dockerfile :


- RUN dotnet test --verbosity:normal 

+ RUN RUN dotnet test '--logger:console;verbosity=minimal' --verbosity quiet –filter FooBar 

For X86: I have modified the Productservices/Dockerfile


- RUN dotnet test --verbosity:normal 

+ RUN RUN dotnet test '--logger:console;verbosity=minimal' --verbosity quiet –filter FooBar 

And appsetting.json file, I have changed localhost to host.docker.internal

After the changes both the script ./infra-run.sh and ./app-run.sh are running successfully on both platforms but when I am trying to see all services Ui in the browser then it’s not opening there. Only the below interface is showing in the browser:

ti

@wojteksuwala Could you please share your feedback regarding the same?

Unable to start Postgres from infra-run.sh file

While running infra-run. sh, its unable to start Postgres database and throws following error

Error: The database is uninitialized and the superuser password is not specified.

Fix:

Need to include environment POSTGRES_HOST_AUTH_METHOD=trust in infra.yml for postgres section

Invalid path for *.Api's in Service projects Dockerfile

For instance, in PaymentService project Dockerfile:

COPY PolicyService.Api/*.csproj ./PolicyService.Api/

is pointing to PolicyService.Api in current directory but its located in its parent directory and Docker throws a forbidden error.
I am new to Docker, so I am not sure whether this config is wrong or I'am missing something.

node-sass dependency is obsolete

I figured out that node-sass dependency mentioned in web package is obsolete now.

I tried to change it to

"devDependencies": {
"@vue/cli-plugin-babel": "^3.0.0-rc.10",
"@vue/cli-plugin-eslint": "^3.0.0-rc.10",
"@vue/cli-service": "^3.0.0-rc.10",
"node-sass": "^4.14.0",
"sass-loader": "^7.0.3",
"vue-template-compiler": "^2.5.16"
},

then web-vue built successfully

services are not working properly.

@wojteksuwala

I have successfully deployed microservices on both arm64 and x86_64 platforms, and I am also working on load testing using Locust. But product, pricing, and policy search services are not working properly.
Initially, when I ran docker-compose it worked fine, but the next time when I ran docker-compose the price of an insurance policy is not visible or calculated after purchase. It only works if all the images created by Docker Compose are removed.
Could you please share your feedback regarding the same?
Also, it would be really helpful if you can confirm that this demo application work only once or if can it be used for load testing.

UI interface for Product service:
image

How to scale ChatService?

Hey.

So how are you going to scale ChatService with sending policy created notification to clients? The problem is the next - clients are connected to different instances of ChatService and messages should be routed to proper instance to be sent to necessary client. Do you know how to solve this problem nicely with SignalR+RabbitMQ (if you need to of course)?

Thanks.

Some Features like Toucan

Dear, I am using Toucn for some of my app, and it has fairly good features, I have update some of them in my side.

What I want is to consider the mentioned repo and upgrade, it will be of very help.

Create CI process

Docker configuration for each service.
Use Azure DevOps/Travis CI.

problem to run app

hi
I face a few problems while running the app though i use Windows Docker and docker-compose branch
After running, Eureka shows 4 services but no websites is launched on localhost:80
what is the solution to fix this

ProductService.Test error

i have two errors when run app-run.sh:
[xUnit.net 00:00:05.22] ProductService.Test.Controllers.ProductsControllerTest.GetByCode_ReturnsJsonResult_WithOneProductOfCorrectType [FAIL] [xUnit.net 00:00:05.22] System.InvalidOperationException : Eureka URL http://localhost:8761/eureka/ is not valid in containerized or cloud environments. Please configure Eureka:Client:ServiceUrl with a non-localhost address or add a service binding.

[xUnit.net 00:00:05.34] ProductService.Test.Controllers.ProductsControllerTest.GetAll_ReturnsJsonResult_WithListOfProducts [FAIL] [xUnit.net 00:00:05.34] System.InvalidOperationException : Eureka URL http://localhost:8761/eureka/ is not valid in containerized or cloud environments. Please c onfigure Eureka:Client:ServiceUrl with a non-localhost address or add a service binding.

PaymentService.dll is missing on

Hi,
Please help me
I am looking for PaymentService.dll
is missing :
C:\Users\Utilisateur\source\repos\dotnetcore-microservices-poc\PaymentService\bin\Debug\net5.0\ref\PaymentService.dll
Thank

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.