:)

BTW - a little teaser about error page handling (and testing) - single
"error page" registration with higher ranking leads to re-registration of
existing (currently shadowed/disabled) error pages in 4 different contexts:

assertThat(httpGET(port, "/c1/yikes?result=461&msg=x461"), endsWith("/*ep1*:
[badServlet][null][null][x461][/c1/yikes][461]"));
assertThat(httpGET(port, "/c2/yikes?ex=" + th + "&msg=x"), endsWith("/*ep1*:
[badServlet][" + th + "][" + th + "][" + emsg + "][/c2/yikes][500]"));
assertThat(httpGET(port, "/c3/yikes?result=461&msg=x461"), endsWith("/*ep2*:
[badServlet][null][null][x461][/c3/yikes][461]"));

// errorPages#5 registered to /c2 and /c4 - ranked higher than ep#1 in /c2,
so:
//  - ep#1 is deactivated in /c1 and /c2
//  - ep#3 is activated in /c1
//  - ep#5 MAY be activated in /c2 and /c4, but in /c2, ep#4 is ranked
higher than ep#5
//  - ep#4 is ranked lower than ep#2 in /c3, so it won't be activated
ANYWHERE
//  - ep#5 will thus be activated in /c2 and /c4
ErrorPageModel em5 = new ErrorPageModel(new String[] { "461", th },
"/error/ep5");
em5.setServiceRank(1);
em5.setServiceId(++serviceId);
view.registerErrorPages(Arrays.asList(wcc2, wcc4), em5);

assertThat(httpGET(port, "/c1/yikes?result=461&msg=x461"), endsWith("/*ep3*:
[badServlet][null][null][x461][/c1/yikes][461]"));
assertThat(httpGET(port, "/c2/yikes?ex=" + th + "&msg=x"), endsWith("/*ep5*:
[badServlet][" + th + "][" + th + "][" + emsg + "][/c2/yikes][500]"));
assertThat(httpGET(port, "/c3/yikes?result=461&msg=x461"), endsWith("/*ep2*:
[badServlet][null][null][x461][/c3/yikes][461]"));
assertThat(httpGET(port, "/c4/yikes?result=461&msg=x461"), endsWith("/*ep5*:
[badServlet][null][null][x461][/c4/yikes][461]"));

regards
Grzegorz


pt., 24 lip 2020 o 07:45 Francois Papon <[email protected]>
napisał(a):

> Thank you very much Grzegorz for all the great work!
>
> regards,
>
> François
> [email protected]
>
> Le 24/07/2020 à 07:25, Grzegorz Grzybek a écrit :
> > Hello
> >
> > A little report about Pax Web:
> >  - I wasn't able to devote 100% of my work time to Pax Web - this week it
> > was rather 10%..., but I've surprisingly quickly implemented welcome
> pages
> > and error page handling - now I'm adding a thin Whiteboard layer for it.
> >  - I've moved all "http service" integration tests and they all work
> >  - I started moving "whiteboard" integration tests
> >  - After I check that Whiteboard pattern works for servlets (done),
> filters
> > (done), contexts (done), listeners, error pages, welcome files and
> > resources I'll start JSP refactoring (mostly done at refactoring level -
> > the only thing left is to incorporate the changes into existing servlet
> > httpservice/whiteboard refactoring)
> >  - Then I'll tackle WAR extender with currently designed transactional
> > approach to registration (it kind of worked, but HAD TO change because of
> > total context model rewrite)
> >  - JSF integration tests will be a breeze then
> >  - 8.0.0.GA
> >
> > Sorry for a really huge delay, but I never expected this refactoring to
> be
> > so deep.
> >
> > kind regards
> > Grzegorz Grzybek
> >
> > pt., 24 lip 2020 o 07:16 Jean-Baptiste Onofre <[email protected]>
> napisał(a):
> >
> >> Hi,
> >>
> >> As you saw, Karaf Cellar 4.2.0 has been released. I’m now moving forward
> >> on Winegrower release preparation and Karaf runtime.
> >>
> >> I will keep you posted soon.
> >>
> >> Regards
> >> JB
> >>
> >>> Le 6 juil. 2020 à 09:41, Jean-Baptiste Onofre <[email protected]> a
> écrit
> >> :
> >>> Hi guys,
> >>>
> >>> Just a quick update about coming Karaf releases:
> >>>
> >>> 1. Winegrower 1.0.0
> >>> I moved forward on new cepages and examples in Winegrower. I will open
> >> the PRs today and I will move forward on release tomorrow or Wednesday.
> >>> 2. Karaf Cellar 4.2.0 and 4.3.0
> >>> I did bunch of fixes in Karaf Cellar 4.2.0. Cellar 4.2.x architecture
> >> and design is as Cellar 4.1.x but with dependency updates and fixes.
> >>> On the other hand, I started a deep refactoring of Cellar for 4.3.x
> >> release with better design. I plan to release a first RC during summer.
> I
> >> will share some details quickly.
> >>> 3. Karaf runtime releases
> >>> With new features coming (Spring Boot support, DevX, Features JSON,
> >> etc, etc), we set of runtime releases is planned.
> >>> I will do a separate email about Karaf runtime plan with details (by
> the
> >> end of this week).
> >>> Stay tuned !
> >>>
> >>> Regards
> >>> JB
> >>
>

Reply via email to