Hi All, The last step of the Jamon migration was merged to master branch. Now we only have JSP-s no Jamon files and no Jamon dependency on master.
I opened the first backport (MasterStatus page) to branch-3 (#7468). It is a clean backport. Would be great if you could review it. Many thanks in advance, Dávid Dávid Paksy <[email protected]> ezt írta (időpont: 2025. nov. 10., H, 13:44): > Hi All, > > Thanks, the second step (RegionStatus page) is merged to master. > > For the last step, opened a new PR (#7390) for the CanaryStatus page and > the removal of the Jamon dependency which is a bit smaller change. > > Would be great if you could review it. > > Many thanks in advance, > Dávid > > Dávid Paksy <[email protected]> ezt írta (időpont: 2025. okt. 9., Cs, > 17:28): > >> Hi, >> >> Many thanks for your help in the Jamon to JSP migration so far. >> >> I merged the first step, the MasterStatus page yesterday. >> Now I opened a PR (7371) for the second step: the RegionStatus page. >> The last step will be the CanaryStatus page and the removal of the Jamon >> dependency which is a smaller change. >> >> I'd appreciate if you could review PR 7371 (RegionStatus page). >> >> Many thanks in advance, >> Dávid >> >> Dávid Paksy <[email protected]> ezt írta (időpont: 2025. aug. 18., H, >> 13:27): >> >>> Hi All, >>> >>> Can you please check the Master Status page Jamon to JSP migration PR >>> https://github.com/apache/hbase/pull/6875 if you'll have some time? >>> >>> Many thanks in advance, >>> Dávid >>> >>> Dávid Paksy <[email protected]> ezt írta (időpont: 2025. ápr. 10., >>> Cs, 9:13): >>> >>>> Many thanks to your feedback István! >>>> I agree that the underscores in the sub-page names does not conform to >>>> the existing naming convention (camel case without underscores) so I'll >>>> change them. >>>> >>>> Best Regards, >>>> Dávid >>>> >>>> Istvan Toth <[email protected]> ezt írta (időpont: 2025. ápr. 10., Cs, >>>> 7:07): >>>> >>>>> Looks fine to me at a glance. >>>>> We perhaps still have too much code in the pages, but it's probably >>>>> better >>>>> to concentrate on the framework change for now, and do refactorings >>>>> later. >>>>> I'm also not sure about using underscore in the sub-page names. >>>>> >>>>> Stoty >>>>> >>>>> >>>>> On Thu, Apr 3, 2025 at 9:38 AM Dávid Paksy <[email protected]> >>>>> wrote: >>>>> >>>>> > Hi All, >>>>> > >>>>> > Since there are quite some Jamon code, as a first step I created a >>>>> PR to >>>>> > migrate the Master Status page back to JSP: >>>>> > https://github.com/apache/hbase/pull/6875 >>>>> > >>>>> > I still have to test it a bit more but I'd be interested in your >>>>> opinion >>>>> > about it. >>>>> > >>>>> > Many thanks, >>>>> > Dávid >>>>> > >>>>> > Dávid Paksy <[email protected]> ezt írta (időpont: 2025. márc. >>>>> 27., Cs, >>>>> > 11:49): >>>>> > >>>>> > > Many thanks for your responses and for the good discussion. >>>>> > > >>>>> > > For the next step, I created HBASE-29223 to start migrating Jamon >>>>> back to >>>>> > > JSP. >>>>> > > >>>>> > > Best Regards, >>>>> > > Dávid >>>>> > > >>>>> > > Nick Dimiduk <[email protected]> ezt írta (időpont: 2025. jan. >>>>> 22., >>>>> > > Sze, 14:05): >>>>> > > >>>>> > >> On Wed, Jan 22, 2025 at 8:04 AM Istvan Toth >>>>> <[email protected] >>>>> > > >>>>> > >> wrote: >>>>> > >> > >>>>> > >> > On the beans topic: >>>>> > >> > It does not have to be RPC, for server-side rendered pages, >>>>> simply >>>>> > >> > moving non-trivial logic from the JSP file itself to a separate >>>>> java >>>>> > >> class >>>>> > >> > may be an improvement. >>>>> > >> > (Though most of the heavy lifting is already done via the HBase >>>>> API) >>>>> > >> >>>>> > >> This is the type of improvement that I meant to suggest when >>>>> bringing >>>>> > >> up Jersey and beans. My thinking is that we would render out all >>>>> the >>>>> > >> information necessary to present a page as a self-contained >>>>> "bean" / >>>>> > >> POJO / whatever data object, and then the UI would be responsible >>>>> only >>>>> > >> for rendering an appropriate view of that object. The existing >>>>> Jersey >>>>> > >> stuff renders to JSON, but we can just as easily render to html. >>>>> > >> >>>>> > >> I think that we are aligned on principal. >>>>> > >> >>>>> > >> Thanks, >>>>> > >> Nick >>>>> > >> >>>>> > >> > On Thu, Dec 12, 2024 at 1:20 PM Nick Dimiduk < >>>>> [email protected]> >>>>> > >> wrote: >>>>> > >> > >>>>> > >> > > Thanks for bringing this up Dávid. >>>>> > >> > > >>>>> > >> > > Istvan has covered a lot of ground in his reply and I >>>>> generally >>>>> > agree >>>>> > >> with >>>>> > >> > > him. I agree that we should support server-side rendering >>>>> over a >>>>> > >> JS-heavy >>>>> > >> > > solution. I agree that JSP is old but an entrenched standard, >>>>> which >>>>> > >> has >>>>> > >> > > some appeal given our history. >>>>> > >> > > >>>>> > >> > > I am concerned that we won’t ever attract frontend developers >>>>> by >>>>> > >> leaning >>>>> > >> > > into such an old technology stack. This hurts the project >>>>> doubly >>>>> > >> because it >>>>> > >> > > means both our product AND our website languishes looking old >>>>> and >>>>> > >> outdated. >>>>> > >> > > >>>>> > >> > > I think that we should be able to selectively opt-in to more >>>>> modern >>>>> > JS >>>>> > >> > > features. The Region Visualizer on the Master UI is one such >>>>> > example. >>>>> > >> To be >>>>> > >> > > my own critic on that feature, I do not know if the UI >>>>> degrades >>>>> > >> gracefully >>>>> > >> > > for a client that does not support JS. >>>>> > >> > > >>>>> > >> > > On the comment about moving the JSPs over to consuming beans, >>>>> I did >>>>> > >> start >>>>> > >> > > an effort around this by introducing a modern (at the time) >>>>> Jersey >>>>> > >> > > environment. I think anyway that we can continue to build on >>>>> Jersey >>>>> > to >>>>> > >> > > render model objects that get rendered out via JSP (or >>>>> whatever). >>>>> > >> > > >>>>> > >> > > Thanks, >>>>> > >> > > Nick >>>>> > >> > > >>>>> > >> > > On Thu, 12 Dec 2024 at 12:55, Istvan Toth >>>>> > <[email protected] >>>>> > >> > >>>>> > >> > > wrote: >>>>> > >> > > >>>>> > >> > > > I never thought that I would voice support for JSP, but I >>>>> think >>>>> > >> that the >>>>> > >> > > > Jamon situation is a good example of the advantages of JSP. >>>>> > >> > > > >>>>> > >> > > > Yes, JSP is old, kludgy and limited, but it has been around >>>>> since >>>>> > >> > > forever, >>>>> > >> > > > and as it is part of the Java EE (jakarta) standard, we can >>>>> also >>>>> > >> expect >>>>> > >> > > it >>>>> > >> > > > to be around for a long time. >>>>> > >> > > > Jamon was a hot new thing when it was adopted by us, but >>>>> just two >>>>> > >> years >>>>> > >> > > > later it was discontinued. >>>>> > >> > > > >>>>> > >> > > > I think that given what the HBase web UI needs to do, and >>>>> given >>>>> > the >>>>> > >> lack >>>>> > >> > > of >>>>> > >> > > > frontend focus and resources in HBase, something like JSP is >>>>> > >> exactly the >>>>> > >> > > > right technology for us. >>>>> > >> > > > It is simple, super easy to pick up, has minimal >>>>> dependencies, and >>>>> > >> there >>>>> > >> > > is >>>>> > >> > > > a minimal surface area for security issues with it. >>>>> > >> > > > >>>>> > >> > > > If we move to another server-side rendering framework, >>>>> there is no >>>>> > >> > > > guarantee that that framework would be around long enough >>>>> for our >>>>> > >> > > purposes. >>>>> > >> > > > >>>>> > >> > > > (Having said that, the existing JSP pages could certainly be >>>>> > >> improved by >>>>> > >> > > > moving most of the Java code to some backing beans) >>>>> > >> > > > >>>>> > >> > > > I also want to pre-emptively mention that I would consider >>>>> moving >>>>> > >> to some >>>>> > >> > > > client-side rendering framework a huge mistake, as HBase >>>>> does not >>>>> > >> need >>>>> > >> > > such >>>>> > >> > > > functionality, and adding another intense upgrade and >>>>> rewrite >>>>> > >> treadmill >>>>> > >> > > > that few of us has the expertise for would just waste our >>>>> > resources. >>>>> > >> > > > >>>>> > >> > > > Istvan >>>>> > >> > > > >>>>> > >> > > > On Thu, Dec 12, 2024 at 11:30 AM 张铎(Duo Zhang) < >>>>> > >> [email protected]> >>>>> > >> > > > wrote: >>>>> > >> > > > >>>>> > >> > > > > Are there any new ways to implement this? >>>>> > >> > > > > JSP is also a very old technology... >>>>> > >> > > > > >>>>> > >> > > > > Dávid Paksy <[email protected]> 于2024年12月12日周四 >>>>> 17:58写道: >>>>> > >> > > > > > >>>>> > >> > > > > > Hi, >>>>> > >> > > > > > >>>>> > >> > > > > > Sorry for sending this again - but the former mail >>>>> landed in >>>>> > >> spam >>>>> > >> > > > > (because >>>>> > >> > > > > > of the links) for some people. >>>>> > >> > > > > > >>>>> > >> > > > > > While I was working on HBASE-28832 to migrate Bootstrap >>>>> I >>>>> > >> noticed >>>>> > >> > > that >>>>> > >> > > > > > HBase have a mix of JSP and Jamon code. Looks like >>>>> HBASE-3835 >>>>> > >> started >>>>> > >> > > > the >>>>> > >> > > > > > work in 2011 of converting from JSP to Jamon, but the >>>>> work >>>>> > >> didn't >>>>> > >> > > > finish. >>>>> > >> > > > > > I guess the best would be to either migrate everything >>>>> to >>>>> > Jamon >>>>> > >> or >>>>> > >> > > back >>>>> > >> > > > > to >>>>> > >> > > > > > JSP as having both is not ideal from maintenance >>>>> perspective. >>>>> > >> > > > > > >>>>> > >> > > > > > While Jamon has advantages (static typing of template >>>>> > >> arguments, unit >>>>> > >> > > > > > testing, etc), looking at the Jamon project, it seems >>>>> that the >>>>> > >> last >>>>> > >> > > > > release >>>>> > >> > > > > > was on 2013-12-29 and I see no newer activity. >>>>> > >> > > > > > >>>>> > >> > > > > > From this I think moving back the Jamon files to JSP >>>>> would >>>>> > >> maybe make >>>>> > >> > > > > more >>>>> > >> > > > > > sense now. >>>>> > >> > > > > > >>>>> > >> > > > > > What do you all think about this? >>>>> > >> > > > > > >>>>> > >> > > > > > Many thanks in advance, >>>>> > >> > > > > > Dávid >>>>> > >> > > > > >>>>> > >> > > > >>>>> > >> > > > >>>>> > >> > > > -- >>>>> > >> > > > *István Tóth* | Sr. Staff Software Engineer >>>>> > >> > > > *Email*: [email protected] >>>>> > >> > > > cloudera.com <https://www.cloudera.com> >>>>> > >> > > > [image: Cloudera] <https://www.cloudera.com/> >>>>> > >> > > > [image: Cloudera on Twitter] <https://twitter.com/cloudera> >>>>> > [image: >>>>> > >> > > > Cloudera on Facebook] <https://www.facebook.com/cloudera> >>>>> [image: >>>>> > >> > > Cloudera >>>>> > >> > > > on LinkedIn] <https://www.linkedin.com/company/cloudera> >>>>> > >> > > > ------------------------------ >>>>> > >> > > > ------------------------------ >>>>> > >> > > > >>>>> > >> > > >>>>> > >> > >>>>> > >> > >>>>> > >> > -- >>>>> > >> > *István Tóth* | Sr. Staff Software Engineer >>>>> > >> > *Email*: [email protected] >>>>> > >> > cloudera.com <https://www.cloudera.com> >>>>> > >> > [image: Cloudera] <https://www.cloudera.com/> >>>>> > >> > [image: Cloudera on Twitter] <https://twitter.com/cloudera> >>>>> [image: >>>>> > >> > Cloudera on Facebook] <https://www.facebook.com/cloudera> >>>>> [image: >>>>> > >> Cloudera >>>>> > >> > on LinkedIn] <https://www.linkedin.com/company/cloudera> >>>>> > >> > ------------------------------ >>>>> > >> > ------------------------------ >>>>> > >> >>>>> > > >>>>> > >>>>> >>>>
