Slide 1

Slide 1 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J MicroProfile - New and Noteworthy Ivar Grimstad
 Principal Consultant, Cybercom Sweden

Slide 2

Slide 2 text

@ivar_grimstad https://github.com/ivargrimstad https://www.linkedin.com/in/ivargrimstad

Slide 3

Slide 3 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 4

Slide 4 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Background MicroProfile Demo and Samples

Slide 5

Slide 5 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Packaging

Slide 6

Slide 6 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J UberJAR

Slide 7

Slide 7 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J java -jar dukes.jar

Slide 8

Slide 8 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hollow JAR

Slide 9

Slide 9 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J java -jar dukes.jar dukes.war

Slide 10

Slide 10 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM Application

Slide 11

Slide 11 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM Java EE Container Application

Slide 12

Slide 12 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM Application UberJAR Hardware Operating System JVM Java EE Container Application Thin WAR java -jar dukes.jar deployDukes.sh

Slide 13

Slide 13 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Why MicroProfile ?

Slide 14

Slide 14 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Java EE 8 What was going on with ?

Slide 15

Slide 15 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 16

Slide 16 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 17

Slide 17 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 18

Slide 18 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Profiles

Slide 19

Slide 19 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Full Profile Web Profile JAX-RS + CDI + JSON-P + WebSocket + Bean Validation + EJB + JPA + Servlet + JSF + JSP + JMS + Batch + Java Mail + Concurrency + JAX-WS + JASPIC

Slide 20

Slide 20 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.0 Septem ber, 2016

Slide 21

Slide 21 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Implementations

Slide 22

Slide 22 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 23

Slide 23 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Demo

Slide 24

Slide 24 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J io.microprofile microprofile 1.0 pom provided

Slide 25

Slide 25 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.1 July 21, 2017

Slide 26

Slide 26 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Configuration for MicroProfile 1.0

Slide 27

Slide 27 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J System Properties System.getProperties() Environment Variables System.getenv() Application Configuration META-INF/microprofile-config.properties

Slide 28

Slide 28 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J io.microprofile microprofile 1.0 pom provided

Slide 29

Slide 29 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J org.eclipse.microprofile microprofile-bom 1.1.0 pom provided

Slide 30

Slide 30 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Demo

Slide 31

Slide 31 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.2 Septem ber 30, 2017

Slide 32

Slide 32 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J org.eclipse.microprofile microprofile-bom 1.1.0 pom provided

Slide 33

Slide 33 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J org.eclipse.microprofile microprofile 1.2 pom provided

Slide 34

Slide 34 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Demo

Slide 35

Slide 35 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Service A MicroProfile 1.2 /metrics /metrics/application Service B MicroProfile 1.2 /metrics /metrics/application …

Slide 36

Slide 36 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.3 January 3, 2018

Slide 37

Slide 37 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J org.eclipse.microprofile microprofile 1.2 pom provided

Slide 38

Slide 38 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J org.eclipse.microprofile microprofile 1.3 pom provided

Slide 39

Slide 39 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Packaging Revisited

Slide 40

Slide 40 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM Application UberJAR Hardware Operating System JVM Java EE Container Application Thin WAR java -jar dukes.jar deployDukes.sh

Slide 41

Slide 41 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM MicroProfile Container Application Thin WAR java -jar dukes.jar deployDukes.sh Hardware Operating System JVM Application UberJAR

Slide 42

Slide 42 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM UberJAR Hardware Operating System JVM MicroProfile Container MicroProfile Application Hardware Operating System JVM Java EE Container Java EE Application java -jar dukes.jar java -jar dukes.jar dukes.war deployDukes.sh

Slide 43

Slide 43 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 44

Slide 44 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Hardware Operating System JVM UberJAR Hardware Operating System JVM MicroProfile Container MicroProfile Application Hardware Operating System JVM Java EE Container Java EE Application docker run dukes docker run dukes docker run dukes

Slide 45

Slide 45 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J … … …

Slide 46

Slide 46 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Config WebSphere Liberty Microprofile Service websphere-liberty:microProfile websphere-liberty:webProfile7 237 MB 198 MB Config WebSphere Liberty
 Web Profile Service

Slide 47

Slide 47 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Config Payara Microprofile Service Config Payara
 Micro Service payara/microprofile:1.0 payara/micro:173 132 MB 83 MB Config Payara
 Web Profile Service payara/server-web:173 515 MB

Slide 48

Slide 48 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Config WildFly Swarm Microprofile Service Config WildFly
 Web Profile Service jboss/base-jdk:8 jboss/wildfly:10.1.0.Final 288 MB 149 MB

Slide 49

Slide 49 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Config TomEE
 Web Profile Service Config TomEE
 Web Profile Service tomee/8-jre-1.7.4-jaxrs tomee/8-jre-7.0.3-webprofile 263 MB 263 MB

Slide 50

Slide 50 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Summary

Slide 51

Slide 51 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.0 Septem ber, 2016

Slide 52

Slide 52 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.1 July 21, 2017

Slide 53

Slide 53 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.2 Septem ber 30, 2017

Slide 54

Slide 54 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.3 January 3, 2018

Slide 55

Slide 55 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 1.4 M arch 23, 2018

Slide 56

Slide 56 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J M icroProfile 2.0 M arch 23, 2018

Slide 57

Slide 57 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J JAX-RS 2.1 JSON-P 1.1 JSON-B 1.0 Servlet 4.0 CDI 2.0 Bean Validation 2.0 Java EE Security API 1.0 JSF 2.3 JPA 2.1 September, 2017

Slide 58

Slide 58 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J JSR 382: Configuration API 1.0

Slide 59

Slide 59 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J

Slide 60

Slide 60 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J Eclipse MicroProfile http://microprofile.io Java EE https://github.com/javaee Eclipse Enterprise for Java (EE4J) https://projects.eclipse.org/projects/ee4j Samples https://github.com/ivargrimstad/dukes-microprofile

Slide 61

Slide 61 text

@ivar_grimstad #MicroProfile #JavaEE #EE4J cybercom.com