Hacker News new | ask | show | jobs
by breakpete 856 days ago
Regarding 2, you can actually bind routes to instance methods:

  var obj = new SomeObjectWithHandlerMethods(dependency);
  var app = Javalin.create().get("/", obj::handlerMethod).start();

Edit: For 4, Javalin 6 also has some documentation regarding Servlets here: https://javalin.io/documentation#adding-other-servlets-and-f...
1 comments

Strange — I swear this wasn't the case. I and several other devs tried for a good three weeks to get Javalin to accept such route bindings. This was a year or two ago, though. Maybe the interface type for a handler function was changed in some more recent version of Javalin?
Not sure about the older versions of Javalin, but from my experience with v5+ it just uses regular Single Abstract Method conversion for the Handler interface, which has a single method with just one parameter (the Context).
It's been a SAM interface since 2017 and basically hasn't changed at all.