eclipse-ee4j / mojarra

Mojarra, a Jakarta Faces implementation
Other
158 stars 107 forks source link

Support for Quarkus #5442

Open arjantijms opened 1 month ago

arjantijms commented 1 month ago

See https://stackoverflow.com/questions/59079402/quarkus-extension-or-not-for-jsf

Maybe we could consider Quarkus support at some point.

melloware commented 1 month ago

That would be awesome. I have been slowly refining and testing the MyFaces integration over the years.

tandraschko commented 1 month ago

i can just say that it requires a lot of work and also changes on existing JSF impl code

IMO it would be cool if you guys would do it but IMO its not worth. MyFaces is running fine already on quarkus.

melloware commented 1 month ago

I agree with @tandraschko it will be a lot of effort and maybe not worth your team's time.

arjantijms commented 1 month ago

i can just say that it requires a lot of work and also changes on existing JSF impl code

IMO it would be cool if you guys would do it but IMO its not worth. MyFaces is running fine already on quarkus.

Maybe something to keep in mind, thanks for chiming in.

I'm also looking for the potentially making Soteria (Jakarta Security) work on Quarkus, which may then be a lot of work as well? Where is most of the work / time spend in making it compatible?

tandraschko commented 1 month ago

In short: Quarkus is not fully CDI compatible

some features are comopletely not supported (like e.g. injection in a non-cdi bean), something like Extensions must be completely rewritten in Quarkus API, which is split in build and runtime. Also scopes have a own API, this mostly requires some wrapping around existing scopes.

tandraschko commented 1 month ago

You can just check our quarkus extensions: https://github.com/apache/myfaces/tree/main/extensions/quarkus

as i said, in addition to make this extension possible, it was needed to refactor some of the JSF Impl code.

melloware commented 1 month ago

@arjantijms you can see the Quarkus JSF podcast here for the state of JSF on Quarkus: https://www.youtube.com/watch?v=DIN0I56-GR4

BalusC commented 1 month ago

it was needed to refactor some of the JSF Impl code

To confirm, no changes in JSF/Faces API code was needed in MyFaces side? I.e. the code currently in Faces 5.0 branch is fine wrt Quarkus? https://github.com/jakartaee/faces/tree/5.0

tandraschko commented 1 month ago

I am almost sure that i only modified impl for quarkus

melloware commented 3 weeks ago

@arjantijms as far as Soteria goes the Quarkus team is super responsive to helping extension developers figure out issues and getting their extension to work with Quarkus. They have a Zulip channel and I have asked a bunch of questions when I was doing the PF, OmniFaces, Myfaces stuff and almost always got a great answer or another extension sample code to look at for what I was trying to accomplish.

arjantijms commented 3 weeks ago

Thanks, sounds good. I moved it a little higher up on my TODO list ;)