Helidon

From APIDesign

(Difference between revisions)
Jump to: navigation, search
(New page: [http://helidon.io helidon.io] is a microservices framework developed four meters away from me (my seat in Oracle Prague office).)
Line 1: Line 1:
-
[http://helidon.io helidon.io] is a microservices framework developed four meters away from me (my seat in [[Oracle]] Prague office).
+
[http://helidon.io helidon.io] is a microservices framework developed four meters away from me (my seat in [[Oracle]] Prague office). As such [[I]] am the natural fit for solving complex tasks that require understanding of both sides - the [[JavaEE]] landscape as well as the [[GraalVM]] internals.
 +
 
 +
[[Helidon]] MP implements the ''Java Micro Profile'' specification based on various other standard [[JavaEE]] subspecifications including [[CDI]]. Getting [[Weld]] (the reference [[CDI]] specification) running on top of [[NativeImage]] is particularly tricky. Not only [[Weld]] dynamically scans for various annotations, but it also dynamically emits [[bytecode]] for its helper classes during runtime. Solving this required more insight into [[JavaEE]] than available among compiler engineers - not that [[I]] had it initially, but the close co-operation with Tomáš Langer (the [[Helidon]] lead engineer) helped us move forward. Tomáš prepared various trivial [[CDI]] sample projects and [[I]] was then able to get them running on [[NativeImage]] by writing a dedicated '''WeldFeature'''. Once the initial road block was gone the [[Helidon]] team was able to move forward and is now about to release [[Helidon]] 2.0. It's Micro Profile edition is going to work with [[NativeImage].

Revision as of 04:23, 29 June 2020

helidon.io is a microservices framework developed four meters away from me (my seat in Oracle Prague office). As such I am the natural fit for solving complex tasks that require understanding of both sides - the JavaEE landscape as well as the GraalVM internals.

Helidon MP implements the Java Micro Profile specification based on various other standard JavaEE subspecifications including CDI. Getting Weld (the reference CDI specification) running on top of NativeImage is particularly tricky. Not only Weld dynamically scans for various annotations, but it also dynamically emits bytecode for its helper classes during runtime. Solving this required more insight into JavaEE than available among compiler engineers - not that I had it initially, but the close co-operation with Tomáš Langer (the Helidon lead engineer) helped us move forward. Tomáš prepared various trivial CDI sample projects and I was then able to get them running on NativeImage by writing a dedicated WeldFeature. Once the initial road block was gone the Helidon team was able to move forward and is now about to release Helidon 2.0. It's Micro Profile edition is going to work with [[NativeImage].

Personal tools
buy