Re: MicroProfile JWT 2.0 support

2022-05-10 Thread Memo Díaz Solis
Helping on TOMEE-3948 in some way, sounds good to me .

I'll start by reviewing the Spec and then the TCK.

Regarding the Spec, I found this

so
I assume that's where the spec is published, but for the TCK I got
this: Projects
(tck.work)  which is for TomEE, but did
not find the microprofile TCK  so I guess it is for Jakarta EE only. So for
the Eclipse Microprofile is there a TCK built in a different workspace?


El mar, 10 may 2022 a las 18:11, David Blevins ()
escribió:

> Hi Memo!
>
> First, thanks for volunteering!  Thrilled to work on this with you.
>
> On TOMEE-3952, are you open to a different task? One of the first things
> I'll do with TOMEE-3947 is replace the code that parses keys and either our
> code will conflict and I'll likely end up needing to rewrite your code.
>
> Are you at all interested in exploring the spec requirements around
> TOMEE-3948?  I've never worked with encrypted JWTs before, so if you
> haven't either we're both equally unprepared :)
>
> What would be really useful is having you read that part of the spec, look
> at the TCK to see what kind of encrypted tokens there are, then see if you
> can create some code in TomEE to decrypt the token (ideally not adding a
> dep on another library).  Doesn't matter if the code is wired into TomEE or
> duplicates code in TomEE, I can help with that part.  You could just throw
> the code anywhere under here:
>
>  -
> https://github.com/apache/tomee/tree/master/mp-jwt/src/main/java/org/apache/tomee/microprofile/jwt
>
> And add a test case here:
>
>  -
> https://github.com/apache/tomee/tree/master/mp-jwt/src/test/java/org/apache/tomee/microprofile/jwt
>
> The test can be a plain java, no-tomee, test that decrypts the encrypted
> JWTs from the TCK.  The JWTs and keys could just be copy/pasted into the
> test case.  That would help me see what needs to be done and have that
> first prototype of code to work from to see what would need to get wired in
> and where.  We could potentially collaborate on that part too.
>
> Does that sound like something that would be fun to work on?
>
>
> -David
>
>
> > On May 10, 2022, at 3:33 PM, Memo Díaz Solis  wrote:
> >
> > Hello David. I'd like to work on some of them. So if you don't mind, I'd
> > like to start with TOMEE-3952.
> >
> >
> >
> > El mar, 10 may 2022 a las 12:00, David Blevins ( >)
> > escribió:
> >
> >> I'm starting to take a look at what we need to implement MicroProfile
> JWT
> >> 2.0 support.
> >>
> >> There are no new requirements in 2.0 itself.  That version was largely
> >> created to communicate MicroProfile overall upgraded from Jakarta EE 8
> to
> >> 9.1.
> >>
> >> There are a handful of new requirements 1.2 we have yet to implement.  I
> >> dug through the spec and made this list:
> >>
> >> - TOMEE-3947   Elliptic Curve ES256 signature algorithm
> >> - TOMEE-3948   Decryption of JWTs using RSA-OAEP and A256GCM algorithms
> >> - TOMEE-3949   Support for JWT audience aud claim
> >> - TOMEE-3950   Support for JWT token cookies
> >> - TOMEE-3951   JWT token groups claim is now optional
> >> - TOMEE-3952   Deprecate RSA keys of 1024 bit length
> >>
> >> These all sit as subtasks of this JIRA issue:
> >>
> >> - https://issues.apache.org/jira/browse/TOMEE-3946 "MicroProfile JWT
> 2.0
> >> Support"
> >>
> >> I'm grabbing TOMEE-3947 Elliptic Curve ES256 signature algorithm
> >>
> >> If anyone would like to work on any of the other items, let me know and
> >> I'll assign it to you.
> >>
> >>
> >> -David
> >>
> >>
>
>


Re: MicroProfile JWT 2.0 support

2022-05-10 Thread Memo Díaz Solis
Hello David. I'd like to work on some of them. So if you don't mind, I'd
like to start with TOMEE-3952.



El mar, 10 may 2022 a las 12:00, David Blevins ()
escribió:

> I'm starting to take a look at what we need to implement MicroProfile JWT
> 2.0 support.
>
> There are no new requirements in 2.0 itself.  That version was largely
> created to communicate MicroProfile overall upgraded from Jakarta EE 8 to
> 9.1.
>
> There are a handful of new requirements 1.2 we have yet to implement.  I
> dug through the spec and made this list:
>
>  - TOMEE-3947   Elliptic Curve ES256 signature algorithm
>  - TOMEE-3948   Decryption of JWTs using RSA-OAEP and A256GCM algorithms
>  - TOMEE-3949   Support for JWT audience aud claim
>  - TOMEE-3950   Support for JWT token cookies
>  - TOMEE-3951   JWT token groups claim is now optional
>  - TOMEE-3952   Deprecate RSA keys of 1024 bit length
>
> These all sit as subtasks of this JIRA issue:
>
>  - https://issues.apache.org/jira/browse/TOMEE-3946 "MicroProfile JWT 2.0
> Support"
>
> I'm grabbing TOMEE-3947 Elliptic Curve ES256 signature algorithm
>
> If anyone would like to work on any of the other items, let me know and
> I'll assign it to you.
>
>
> -David
>
>


[GitHub] [tomee] cesarhernandezgt commented on pull request #883: Tomee 3824

2022-05-10 Thread GitBox


cesarhernandezgt commented on PR #883:
URL: https://github.com/apache/tomee/pull/883#issuecomment-1122907477

   Hi @tichovz , thank you for the PR.
   The PR is against apache:develop (last updated back in 2015); perhaps you 
may want to open this against the current Master branch?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@tomee.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[GitHub] [tomee] tichovz opened a new pull request, #883: Tomee 3824

2022-05-10 Thread GitBox


tichovz opened a new pull request, #883:
URL: https://github.com/apache/tomee/pull/883

   I create a new method into ObjectFactory and a new test method, where 
unmarshalling the web-fragment.xml is successful.
   Sorry I made a code format in JeeTest.java. 
   Unfortunately I do not know how to test ObjectFactory.createWebFragment 
method.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@tomee.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



Re: TOMEE-3824 New Jakarta EE 9 XML namespace not recognized in web-fragment.xml (was Re: How can I help?)

2022-05-10 Thread David Blevins
Hi Zoltán!

Really fantastic you have something working!

If you create a PR that'a the best way to say "here are my changes, can you 
please review?"

 - 
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request

Any JDK 11 is fine since TomEE doesn't require a specific Java vendor -- any 
Java 11 version is good.

Once you have that PR ready, feel free to update this thread with the link.  
Discussion can happen in the PR as well, but definitely more people see it here.


-David


> On May 10, 2022, at 11:06 AM, Zoltán Tichov  wrote:
> 
> Hi David!
> 
> I made some changes and a testcase, how can I show these changes to
> somebody?
> Which JDK should I use? Now I use adoptOpenJDK 11 to run the tests.
> 
> Thanks: Zoltán
> 
> On Fri, May 6, 2022 at 1:27 AM David Blevins 
> wrote:
> 
>> Hey Zoltán!
>> 
>> Absolutely, you're welcome to fix the issue.  I can assign the issue to
>> you if you let me know your JIRA username.  Make a comment on the issue and
>> that'll be the quickest way to send it.
>> 
>> We intentionally have it setup so new people can't assign issues to
>> themselves so that they're forced to come to the list where we can get them
>> off to the right start.
>> 
>> On the issue you want to fix, most the code that would be involved in the
>> fix is here:
>> 
>> -
>> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/JaxbJavaee.java
>> 
>> Some important history to help you.  When J2EE got renamed to Java EE, the
>> namespaces changed.  The TCK for full Java EE server tests that all
>> historic namespaces can be supported.  Our solution was to create an
>> org.xml.sax.XMLFilter and dynamically rewrite the namespace on any document
>> we were given to the then latest namespace
>> http://java.sun.com/xml/ns/javaee
>> 
>> -
>> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/JaxbJavaee.java#L291
>> 
>> The way JAXB works is all the namespaces are hardcoded and without a
>> filter like the one we made, there'd be no way to support multiple
>> namespaces.  Those namespaces are all here:
>> 
>> -
>> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/ObjectFactory.java
>> 
>> I did most that work, but it was 15 years ago and I don't recall all the
>> details.  Jean-Louis did the work for the Jakarta namespace.  I know we're
>> testing at least some those old namespaces and the new namespace.  We have
>> some test descriptors here:
>> 
>> -
>> https://github.com/apache/tomee/tree/master/container/openejb-jee/src/test/resources
>> 
>> I don't recall the name of those tests offhand, but if you search for the
>> names of some of those files that should get you close.
>> 
>> 
>> Now a couple thoughts as I see potential for some short-term work and some
>> longer-term work.
>> 
>> - Long-term: We're clearly still referring to "
>> http://java.sun.com/xml/ns/javaee; as the primary namespace.  That's not
>> going to age well.  If someone has to write an email like this in 15 years,
>> they'll likely have to explain what "javaee" is like I had to harken back
>> to "J2EE".  We should probably make the new Jakarta EE namespace be the
>> primary namespace and rework all the JAXB code and namespace filters
>> accordingly.
>> 
>> - Short-term: Do not do any of that and avoid opening that can of worms
>> at all cost.  Get the file to parse with the minimum change possible.  Get
>> some experience with the code and a successful contribution in the can.
>> 
>> This is what I'd do regardless of (or because of?) years of experience.  I
>> always take the quick win before attempting the big one.
>> 
>> If you get into the code and decide the big change sounds like fun, we can
>> make a ticket for it and plan it.  Probably we'd want to shore up any test
>> coverage we'd be lacking and also get a full TCK run to see what those
>> numbers look like so we can spot regressions.
>> 
>> Hope some of this is helpful!
>> 
>> Don't hesitate to be super noisy and ask lots and lots of questions.
>> Silence is death. :)
>> 
>> 
>> -David
>> 
>> 
>>> On May 5, 2022, at 3:31 PM, Zoltán Tichov 
>> wrote:
>>> 
>>> Hi Richard!
>>> I found a ticket with a bug that I also encountered.The ticket is open
>> and
>>> unassigned.
>>> Should I try to fix it? If so, how can it be assigned to me?
>>> https://issues.apache.org/jira/browse/TOMEE-3824
>>> 
>>> Best: Zoltán
>>> 
>>> On Wed, Apr 27, 2022 at 8:36 AM Zowalla, Richard <
>>> richard.zowa...@hs-heilbronn.de> wrote:
>>> 
 Hi,
 
 it would certainly help to track these issues as an issue.
 
 Maybe they are already solved (as the code has evolved) but maybe not,
 so it would be good to have them.
 
 Gruß
 Richard
 
 Am Dienstag, dem 26.04.2022 um 21:54 +0200 schrieb Zoltán Tichov:
> Hi Richard!
> 

Re: TOMEE-3824 New Jakarta EE 9 XML namespace not recognized in web-fragment.xml (was Re: How can I help?)

2022-05-10 Thread Zoltán Tichov
Hi David!

I made some changes and a testcase, how can I show these changes to
somebody?
Which JDK should I use? Now I use adoptOpenJDK 11 to run the tests.

Thanks: Zoltán

On Fri, May 6, 2022 at 1:27 AM David Blevins 
wrote:

> Hey Zoltán!
>
> Absolutely, you're welcome to fix the issue.  I can assign the issue to
> you if you let me know your JIRA username.  Make a comment on the issue and
> that'll be the quickest way to send it.
>
> We intentionally have it setup so new people can't assign issues to
> themselves so that they're forced to come to the list where we can get them
> off to the right start.
>
> On the issue you want to fix, most the code that would be involved in the
> fix is here:
>
>  -
> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/JaxbJavaee.java
>
> Some important history to help you.  When J2EE got renamed to Java EE, the
> namespaces changed.  The TCK for full Java EE server tests that all
> historic namespaces can be supported.  Our solution was to create an
> org.xml.sax.XMLFilter and dynamically rewrite the namespace on any document
> we were given to the then latest namespace
> http://java.sun.com/xml/ns/javaee
>
>  -
> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/JaxbJavaee.java#L291
>
> The way JAXB works is all the namespaces are hardcoded and without a
> filter like the one we made, there'd be no way to support multiple
> namespaces.  Those namespaces are all here:
>
>  -
> https://github.com/apache/tomee/blob/master/container/openejb-jee/src/main/java/org/apache/openejb/jee/ObjectFactory.java
>
> I did most that work, but it was 15 years ago and I don't recall all the
> details.  Jean-Louis did the work for the Jakarta namespace.  I know we're
> testing at least some those old namespaces and the new namespace.  We have
> some test descriptors here:
>
>  -
> https://github.com/apache/tomee/tree/master/container/openejb-jee/src/test/resources
>
> I don't recall the name of those tests offhand, but if you search for the
> names of some of those files that should get you close.
>
>
> Now a couple thoughts as I see potential for some short-term work and some
> longer-term work.
>
>  - Long-term: We're clearly still referring to "
> http://java.sun.com/xml/ns/javaee; as the primary namespace.  That's not
> going to age well.  If someone has to write an email like this in 15 years,
> they'll likely have to explain what "javaee" is like I had to harken back
> to "J2EE".  We should probably make the new Jakarta EE namespace be the
> primary namespace and rework all the JAXB code and namespace filters
> accordingly.
>
>  - Short-term: Do not do any of that and avoid opening that can of worms
> at all cost.  Get the file to parse with the minimum change possible.  Get
> some experience with the code and a successful contribution in the can.
>
> This is what I'd do regardless of (or because of?) years of experience.  I
> always take the quick win before attempting the big one.
>
> If you get into the code and decide the big change sounds like fun, we can
> make a ticket for it and plan it.  Probably we'd want to shore up any test
> coverage we'd be lacking and also get a full TCK run to see what those
> numbers look like so we can spot regressions.
>
> Hope some of this is helpful!
>
> Don't hesitate to be super noisy and ask lots and lots of questions.
> Silence is death. :)
>
>
> -David
>
>
> > On May 5, 2022, at 3:31 PM, Zoltán Tichov 
> wrote:
> >
> > Hi Richard!
> > I found a ticket with a bug that I also encountered.The ticket is open
> and
> > unassigned.
> > Should I try to fix it? If so, how can it be assigned to me?
> > https://issues.apache.org/jira/browse/TOMEE-3824
> >
> > Best: Zoltán
> >
> > On Wed, Apr 27, 2022 at 8:36 AM Zowalla, Richard <
> > richard.zowa...@hs-heilbronn.de> wrote:
> >
> >> Hi,
> >>
> >> it would certainly help to track these issues as an issue.
> >>
> >> Maybe they are already solved (as the code has evolved) but maybe not,
> >> so it would be good to have them.
> >>
> >> Gruß
> >> Richard
> >>
> >> Am Dienstag, dem 26.04.2022 um 21:54 +0200 schrieb Zoltán Tichov:
> >>> Hi Richard!
> >>>
> >>> I have found two errors in Tomee 9.0.0-M7. Should I make tickets for
> >>> these
> >>> errors and try to fix them?
> >>> Although they may have been fixed in the next version (9.0.0-M8)
> >>>
> >>> Zoltán
> >>>
> >>> On Sun, Apr 24, 2022 at 11:06 AM Zowalla, Richard <
> >>> richard.zowa...@hs-heilbronn.de> wrote:
> >>>
>  Hi Zoltán,
> 
>  It's very great from you and it's truly awesome when a long time
>  user
>  of TomEE decides to contribute :)
> 
>  First of all, do not get intimidated by your first ticket. If it
>  ends
>  up being too hard or just not fun, let's find something else for
>  you.
>  There is always plenty of work to do.
> 
>  We are currently working on TomEE 9. Therefore, we 

MicroProfile JWT 2.0 support

2022-05-10 Thread David Blevins
I'm starting to take a look at what we need to implement MicroProfile JWT 2.0 
support.

There are no new requirements in 2.0 itself.  That version was largely created 
to communicate MicroProfile overall upgraded from Jakarta EE 8 to 9.1.

There are a handful of new requirements 1.2 we have yet to implement.  I dug 
through the spec and made this list:

 - TOMEE-3947   Elliptic Curve ES256 signature algorithm 
 - TOMEE-3948   Decryption of JWTs using RSA-OAEP and A256GCM algorithms 
 - TOMEE-3949   Support for JWT audience aud claim   
 - TOMEE-3950   Support for JWT token cookies
 - TOMEE-3951   JWT token groups claim is now optional   
 - TOMEE-3952   Deprecate RSA keys of 1024 bit length

These all sit as subtasks of this JIRA issue:

 - https://issues.apache.org/jira/browse/TOMEE-3946 "MicroProfile JWT 2.0 
Support"

I'm grabbing TOMEE-3947 Elliptic Curve ES256 signature algorithm 

If anyone would like to work on any of the other items, let me know and I'll 
assign it to you.


-David



smime.p7s
Description: S/MIME cryptographic signature


How Can I Help with the Apache Microprofile implementation

2022-05-10 Thread Memo Díaz Solis
Hi All, I've been reading the mailing list and noticed that it was decided
to use smallRye in some cases. I would like to help with the Apache
implementation and as far as I understand, those are outdated.


Re: TomEE 9.x - from javax to jakarta namespace

2022-05-10 Thread David Blevins
Was checking out the TCK numbers this morning can make to suggest a 9.0.0-M8 
while things look good and found this amazing email.

The 9.0.x branch is looking absolutely amazing!!!

What do we think about pushing out a 9.0.0-M8 while things are in their 
peak-stable state?  I'm sure we'll have to rip up a few more things to finish 
off the remaining Jakarta EE and MP TCK issues.  Would be great to have 
something that isn't M7 to fallback on as a reference point to track 
regressions.

Thoughts?


-David



> On May 10, 2022, at 3:56 AM, Jean-Louis Monteiro  
> wrote:
> 
> Hi all,
> 
> Time for some reporting
> 
> On our journey to migrate TomEE over from javax to jakarta namespace, we
> had many issues.
> After updating all our code, we had to do a bunch of dependency upgrades
> after upgrading many of them (OpenWebbeans, BVal, Geronimo, etc).
> 
> We then faced many issues with non compatible libraries for example
> (ActiveMQ, commons-dbcp, CXF, sxc, taglib, etc). So we ended up repacking
> them in our own groupId after using the Maven Shade plugin to relocate the
> packages.
> 
> We worked on BVal TCK and CDI TCK and we are close to passing them.
> 
> But we had before to solve all our outdated MicroProfile 1.3 stack to the
> most recent and jakarta compatible version. Geronimo implementations being
> far being, we decided to use some SmallRye implementations until we can
> dedicate some time to update our Apache implementations (config, metrics,
> health, openapi, opentracing, fault tolerance).
> 
> Our build is now more stable, but still not green. Some issues are
> basically easy to fix and most people could do it (examples for instance).
> 
> https://ci-builds.apache.org/job/Tomee/job/master-build-full/
> 
> The integration for openapi, opentracing and fault tolerance is not done
> and we are far from passing the TCK. On config, metrics and health we are
> close. Same for our JWT implementation.
> 
> I also wanted to have a view on the platform TCK, so I decided to stop
> TomEE work in order to spend time on the Platform TCK to do all dependency
> upgrades and get the TCK to run properly. I'm pleased to announce that
> after 2 weeks of hard work, we are 99% compatible
> 
> https://tck.work/tomee/build?id=1652104572445
> 
> Thanks everyone for the help.
> Keep going and if you need some guidance or help, let us know.
> 
> For coordination purposes, here is the issue
> https://issues.apache.org/jira/browse/TOMEE-3862
> Many subtasks are there and you can create new tasks when needed and ask
> any committer to assign it to you.
> 
> 
> 
> --
> Jean-Louis Monteiro
> http://twitter.com/jlouismonteiro
> http://www.tomitribe.com
> 
> 
> On Thu, May 5, 2022 at 11:13 AM Zowalla, Richard <
> richard.zowa...@hs-heilbronn.de> wrote:
> 
>> Yes - we already yanked it in 9.x
>> 
>> Gruß
>> Richard
>> 
>> Am Donnerstag, dem 05.05.2022 um 10:10 +0100 schrieb Jonathan
>> Gallimore:
>>> Sounds good. I'll drop the transformer from the 8.x branch (looks
>>> like we
>>> don't use it in 9.x), and I'll create a single example to demonstrate
>>> it in
>>> a sandbox.
>>> 
>>> Jon
>>> 
>>> On Wed, May 4, 2022 at 12:32 PM Zowalla, Richard <
>>> richard.zowa...@hs-heilbronn.de> wrote:
>>> 
 You are right - we can remove it imho from 8.x as we do not test
 with
 it and the transformed samples might not even work, e.g.
 dependencies
 are not migrated, etc.
 
 +1 for providing a (bigger) example.
 
 Gruß
 Richard
 
 Am Mittwoch, dem 04.05.2022 um 11:17 +0100 schrieb Jonathan
 Gallimore:
> I've picked up a task related to the examples:
> https://issues.apache.org/jira/browse/TOMEE-3873. I specifically
> went
> for
> this, as I added the Eclipse Transformer to the build for a
> number of
> examples in the past, back when we were doing the transformation
> process on
> TomEE itself. The drawbacks here is that any tests in the
> examples
> run on
> the javax code, and we just "assume" that the transformed
> artifact
> works. I
> would suggest removing that for the master build, as it just
> takes
> build
> time, and the examples should be transformed from javax to
> jakarta at
> source (if they aren't already). On the TomEE 8 build, we could
> select a
> few examples (no need to do them all) and find a way to run the
> tests
> on
> both javax and jakarta versions of TomEE.
> 
> Additionally, it would likely be useful to add documentation to
> this.
> If we
> also wanted a bigger example application that specifically covers
> transformation, I could look at that too.
> 
> What do you think?
> 
> Jon
> 
> 
> 
> On Tue, Mar 22, 2022 at 12:58 PM Jean-Louis Monteiro <
> jlmonte...@tomitribe.com> wrote:
> 
>> Hi,
>> 
>> I've been working for quite a long time on TomEE 9.x, and it's
>> been
>> more

Re: TomEE 9.x - from javax to jakarta namespace

2022-05-10 Thread Jean-Louis Monteiro
Thank you Alex.
Community work :-)

Still a lot energy to spend before we can get a GA, but moving in the right
direction


--
Jean-Louis Monteiro
http://twitter.com/jlouismonteiro
http://www.tomitribe.com


On Tue, May 10, 2022 at 1:01 PM Alex The Rocker 
wrote:

> Hello Jean-Louis,
>
> Huge, you rock !
>
> Alex
>
> Le jeu. 24 mars 2022 à 10:27, Jean-Louis Monteiro
>  a écrit :
> >
> > Hi,
> >
> > Some additional notes based on current progress.
> >
> > We have successfully created a maintenance branch for TomEE 8.x with all
> > associated builds on Jenkins.
> >
> > We have been able to stabilize the work for TomEE 9.x on the PR and
> > therefore we merged it to master which is now our main development
> branch.
> > The quick build is green but the full build still has a lot of test
> > failures. Same as for TCK the first iterations make it possible to
> > significantly drop the number of failures. The remaining failures are
> > usually harder to fix.
> >
> > We can now divide and conquer. An issue has been created
> > https://issues.apache.org/jira/browse/TOMEE-3862
> > We are going to add as many small tasks as possible so people can pick
> and
> > contribute in parallel.
> >
> >
> > Thanks a lot Richard for all the hard work
> >
> > --
> > Jean-Louis Monteiro
> > http://twitter.com/jlouismonteiro
> > http://www.tomitribe.com
> >
> >
> > On Tue, Mar 22, 2022 at 1:59 PM Jean-Louis Monteiro <
> > jlmonte...@tomitribe.com> wrote:
> >
> > > Hi,
> > >
> > > I've been working for quite a long time on TomEE 9.x, and it's been
> more
> > > challenging and painful than I was expecting. I thought it would be
> good to
> > > give you some sort of status.
> > >
> > > I created a PR for the work. As a reminder, since Java EE moved to
> Eclipse
> > > to become Jakarta EE, we had a switch from javax.* namespace to
> jakarta.*
> > > namespace. This is an impacting change, since all applications and
> > > applications servers are built on top of it.
> > >
> > > In TomEE, we decided to do that change in TomEE. We had previously a
> > > bytecode change approach like an application could do. It worked and we
> > > were able to get certified. But it had a lot of limitations, so we had
> to
> > > do the migration in the code and fix all compatibility issues.
> > >
> > > Here is the PR https://github.com/apache/tomee/pull/814
> > > It has 90+ commits and nearly 5000 files touched (added, removed,
> > > updated). I understand it's a lot and it makes it almost impossible to
> > > review. But I did not see much approaches in this scenario to create
> > > smaller PRs.
> > >
> > > I created a Jenkins build though available at
> > > https://ci-builds.apache.org/job/Tomee/job/master-build-quick-9.x/
> > >
> > > It makes it possible to track the progress. There have been steps
> forward
> > > and steps backward.
> > >
> > > All the code does not sit under TomEE, we use a bunch of third party
> > > projects and libraries. I have been able to contribute, publish jakarta
> > > compatible versions and get releases for some of them (Jakarta EE APIs
> Uber
> > > jar, Geronimo Connectors and Transaction Manager, Geronimo Config,
> Health,
> > > Metrics, OpenTracing, OpenAPI. OpenJPA, BVal, and OpenWebBeans will be
> > > released soon.
> > >
> > > The big parts is CXF, and ActiveMQ. I had to get them done in TomEE and
> > > update all group/artifact ids. It's under deps, alongside with SXC,
> DBCP,
> > > and others.
> > >
> > > In terms of removal, I tried to remove old stuff like SAAJ Axis 1
> > > integration, JAX RPC, Management J2EE and a couple of other old things.
> > >
> > > A lot of other libraries got updated to their latest version when
> > > available in the new jakarta namespace.
> > >
> > > I'm starting to get all the build stable and many modules are passing
> now,
> > > including all CXF webservices, OpenEJB Core, and others. I can get a
> build
> > > and run TomEE.
> > >
> > > Goal is to get a green build asap so we can start working on TCK.
> > > The "quick" build is now green. Working on the full build.
> > >
> > > I'll soon be creating a branch for TomEE 8.x maintenance and merge the
> PR.
> > > I'm hoping we can then have small PRs or at least more people working
> in
> > > parallel.
> > >
> > > --
> > > Jean-Louis Monteiro
> > > http://twitter.com/jlouismonteiro
> > > http://www.tomitribe.com
> > >
>


Re: TomEE 9.x - from javax to jakarta namespace

2022-05-10 Thread Alex The Rocker
Hello Jean-Louis,

Huge, you rock !

Alex

Le jeu. 24 mars 2022 à 10:27, Jean-Louis Monteiro
 a écrit :
>
> Hi,
>
> Some additional notes based on current progress.
>
> We have successfully created a maintenance branch for TomEE 8.x with all
> associated builds on Jenkins.
>
> We have been able to stabilize the work for TomEE 9.x on the PR and
> therefore we merged it to master which is now our main development branch.
> The quick build is green but the full build still has a lot of test
> failures. Same as for TCK the first iterations make it possible to
> significantly drop the number of failures. The remaining failures are
> usually harder to fix.
>
> We can now divide and conquer. An issue has been created
> https://issues.apache.org/jira/browse/TOMEE-3862
> We are going to add as many small tasks as possible so people can pick and
> contribute in parallel.
>
>
> Thanks a lot Richard for all the hard work
>
> --
> Jean-Louis Monteiro
> http://twitter.com/jlouismonteiro
> http://www.tomitribe.com
>
>
> On Tue, Mar 22, 2022 at 1:59 PM Jean-Louis Monteiro <
> jlmonte...@tomitribe.com> wrote:
>
> > Hi,
> >
> > I've been working for quite a long time on TomEE 9.x, and it's been more
> > challenging and painful than I was expecting. I thought it would be good to
> > give you some sort of status.
> >
> > I created a PR for the work. As a reminder, since Java EE moved to Eclipse
> > to become Jakarta EE, we had a switch from javax.* namespace to jakarta.*
> > namespace. This is an impacting change, since all applications and
> > applications servers are built on top of it.
> >
> > In TomEE, we decided to do that change in TomEE. We had previously a
> > bytecode change approach like an application could do. It worked and we
> > were able to get certified. But it had a lot of limitations, so we had to
> > do the migration in the code and fix all compatibility issues.
> >
> > Here is the PR https://github.com/apache/tomee/pull/814
> > It has 90+ commits and nearly 5000 files touched (added, removed,
> > updated). I understand it's a lot and it makes it almost impossible to
> > review. But I did not see much approaches in this scenario to create
> > smaller PRs.
> >
> > I created a Jenkins build though available at
> > https://ci-builds.apache.org/job/Tomee/job/master-build-quick-9.x/
> >
> > It makes it possible to track the progress. There have been steps forward
> > and steps backward.
> >
> > All the code does not sit under TomEE, we use a bunch of third party
> > projects and libraries. I have been able to contribute, publish jakarta
> > compatible versions and get releases for some of them (Jakarta EE APIs Uber
> > jar, Geronimo Connectors and Transaction Manager, Geronimo Config, Health,
> > Metrics, OpenTracing, OpenAPI. OpenJPA, BVal, and OpenWebBeans will be
> > released soon.
> >
> > The big parts is CXF, and ActiveMQ. I had to get them done in TomEE and
> > update all group/artifact ids. It's under deps, alongside with SXC, DBCP,
> > and others.
> >
> > In terms of removal, I tried to remove old stuff like SAAJ Axis 1
> > integration, JAX RPC, Management J2EE and a couple of other old things.
> >
> > A lot of other libraries got updated to their latest version when
> > available in the new jakarta namespace.
> >
> > I'm starting to get all the build stable and many modules are passing now,
> > including all CXF webservices, OpenEJB Core, and others. I can get a build
> > and run TomEE.
> >
> > Goal is to get a green build asap so we can start working on TCK.
> > The "quick" build is now green. Working on the full build.
> >
> > I'll soon be creating a branch for TomEE 8.x maintenance and merge the PR.
> > I'm hoping we can then have small PRs or at least more people working in
> > parallel.
> >
> > --
> > Jean-Louis Monteiro
> > http://twitter.com/jlouismonteiro
> > http://www.tomitribe.com
> >


Re: TomEE 9.x - from javax to jakarta namespace

2022-05-10 Thread Jean-Louis Monteiro
Hi all,

Time for some reporting

On our journey to migrate TomEE over from javax to jakarta namespace, we
had many issues.
After updating all our code, we had to do a bunch of dependency upgrades
after upgrading many of them (OpenWebbeans, BVal, Geronimo, etc).

We then faced many issues with non compatible libraries for example
(ActiveMQ, commons-dbcp, CXF, sxc, taglib, etc). So we ended up repacking
them in our own groupId after using the Maven Shade plugin to relocate the
packages.

We worked on BVal TCK and CDI TCK and we are close to passing them.

But we had before to solve all our outdated MicroProfile 1.3 stack to the
most recent and jakarta compatible version. Geronimo implementations being
far being, we decided to use some SmallRye implementations until we can
dedicate some time to update our Apache implementations (config, metrics,
health, openapi, opentracing, fault tolerance).

Our build is now more stable, but still not green. Some issues are
basically easy to fix and most people could do it (examples for instance).

https://ci-builds.apache.org/job/Tomee/job/master-build-full/

The integration for openapi, opentracing and fault tolerance is not done
and we are far from passing the TCK. On config, metrics and health we are
close. Same for our JWT implementation.

I also wanted to have a view on the platform TCK, so I decided to stop
TomEE work in order to spend time on the Platform TCK to do all dependency
upgrades and get the TCK to run properly. I'm pleased to announce that
after 2 weeks of hard work, we are 99% compatible

https://tck.work/tomee/build?id=1652104572445

Thanks everyone for the help.
Keep going and if you need some guidance or help, let us know.

For coordination purposes, here is the issue
https://issues.apache.org/jira/browse/TOMEE-3862
Many subtasks are there and you can create new tasks when needed and ask
any committer to assign it to you.



--
Jean-Louis Monteiro
http://twitter.com/jlouismonteiro
http://www.tomitribe.com


On Thu, May 5, 2022 at 11:13 AM Zowalla, Richard <
richard.zowa...@hs-heilbronn.de> wrote:

> Yes - we already yanked it in 9.x
>
> Gruß
> Richard
>
> Am Donnerstag, dem 05.05.2022 um 10:10 +0100 schrieb Jonathan
> Gallimore:
> > Sounds good. I'll drop the transformer from the 8.x branch (looks
> > like we
> > don't use it in 9.x), and I'll create a single example to demonstrate
> > it in
> > a sandbox.
> >
> > Jon
> >
> > On Wed, May 4, 2022 at 12:32 PM Zowalla, Richard <
> > richard.zowa...@hs-heilbronn.de> wrote:
> >
> > > You are right - we can remove it imho from 8.x as we do not test
> > > with
> > > it and the transformed samples might not even work, e.g.
> > > dependencies
> > > are not migrated, etc.
> > >
> > > +1 for providing a (bigger) example.
> > >
> > > Gruß
> > > Richard
> > >
> > > Am Mittwoch, dem 04.05.2022 um 11:17 +0100 schrieb Jonathan
> > > Gallimore:
> > > > I've picked up a task related to the examples:
> > > > https://issues.apache.org/jira/browse/TOMEE-3873. I specifically
> > > > went
> > > > for
> > > > this, as I added the Eclipse Transformer to the build for a
> > > > number of
> > > > examples in the past, back when we were doing the transformation
> > > > process on
> > > > TomEE itself. The drawbacks here is that any tests in the
> > > > examples
> > > > run on
> > > > the javax code, and we just "assume" that the transformed
> > > > artifact
> > > > works. I
> > > > would suggest removing that for the master build, as it just
> > > > takes
> > > > build
> > > > time, and the examples should be transformed from javax to
> > > > jakarta at
> > > > source (if they aren't already). On the TomEE 8 build, we could
> > > > select a
> > > > few examples (no need to do them all) and find a way to run the
> > > > tests
> > > > on
> > > > both javax and jakarta versions of TomEE.
> > > >
> > > > Additionally, it would likely be useful to add documentation to
> > > > this.
> > > > If we
> > > > also wanted a bigger example application that specifically covers
> > > > transformation, I could look at that too.
> > > >
> > > > What do you think?
> > > >
> > > > Jon
> > > >
> > > >
> > > >
> > > > On Tue, Mar 22, 2022 at 12:58 PM Jean-Louis Monteiro <
> > > > jlmonte...@tomitribe.com> wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I've been working for quite a long time on TomEE 9.x, and it's
> > > > > been
> > > > > more
> > > > > challenging and painful than I was expecting. I thought it
> > > > > would be
> > > > > good to
> > > > > give you some sort of status.
> > > > >
> > > > > I created a PR for the work. As a reminder, since Java EE moved
> > > > > to
> > > > > Eclipse
> > > > > to become Jakarta EE, we had a switch from javax.* namespace to
> > > > > jakarta.*
> > > > > namespace. This is an impacting change, since all applications
> > > > > and
> > > > > applications servers are built on top of it.
> > > > >
> > > > > In TomEE, we decided to do that change in TomEE. We had
> > > > > previously
> > > > > a
> > >