Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Ramverket dept44 är modulariserat, i den mening att man vid utveckling av tjänster bara använder de starters (moduler) man har behov av. Viss gemensam funktionalitet, såsom exempelvis felhantering, loggning och generering av OpenAPI-specifikation tillhandahålls i en bas-starter, men i övrigt är funktionaliteten uppdelad:

Starter

Inkluderas…

dept44-starter

…alltid (bas-starter med gemensam funktionalitet)

dept44-starter-feign

…om du vill använda Feign som REST-klient

dept44-starter-resttemplate

…om du vill använda RestTemplate som REST-klient

dept44-starter-webclient

…om du vill använda WebClient som REST-klient

dept44-starter-webservicetemplate

…om du vill integrera mot en SOAP-tjänst

… (fler starters)

Det finns inga restriktioner eller konflikter mellan olika starters - har man behov av mer än en typ av klient använder man helt enkelt de starters som behövs.

Ramverket tillhandahåller en artefakt som alla utvecklade tjänster bör ha som förälder i sitt Maven-projekt:

<?xml version="1.0"?>
<project
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"
        xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>se.sundsvall.dept44</groupId>
        <artifactId>dept44-service-parent</artifactId>
        <version>[dept44-version att använda]</version>
    </parent>
    <groupId>se.sundsvall</groupId>
    <artifactId>ett-api</artifactId>
    <version>0.1-SNAPSHOT</version>
    
    ...
</project>


Artefakten fungerar som en Maven-POM och ser därmed till att rätt versioner av de beroenden som ramverket tillhandahåller används, samt att viss gemensam konfiguration utförs. Den ser även till att ramverkets bas-starter (dept44-starter) alltid inkluderas i utvecklade tjänster.

Vidare aktiveras filtrering på resurser i katalogerna src/main/resources och src/test/resources så att man i resurserna kan använda platshållare på formatet @propertyNamn@ .

För integrationstester läggs katalogerna src/integration-test/java och src/integration-test/resources till som källkods- respektive resurs-rötter.

  • No labels