Re: Significant, not discussed changes on master (was: Re: MOJARRA_2_3X_ROLLING branch has been created)

From: arjan tijms <>
Date: Fri, 17 Feb 2017 23:34:57 +0100


On Fri, Feb 17, 2017 at 11:15 PM, Edward Burns <>

> >>>>> On Fri, 17 Feb 2017 22:56:12 +0100, arjan tijms <
>> said:
> Yes, and I know Vernon and Neil have dealt with it as well. The
> antiquated and crufty build system has long been a pain point.

Indeed. It's of course not unusual for a project of this age, but it has
been a pain point indeed to many.

> This work can certainly proceed, but I'd like to see notifications sent
> to the dev list. Even better if the change can be proposed and
> discussed before being enacted.

Sure, I'll do that from now on then for changes not yet discussed. So if
it's okay, I'll then continue with the small incremental changes mentioned
(fixing a Sonar warning at a time) without proposing each such individual
change, but if there's anything bigger than that, I'll propose and discuss
it first here. Would that be okay?

It goes without saying that I won't touch anything changing API contracts
in the trunk, which I know has to wait for the next spec cycle to have

> I do have some questions though.
> What is the plan for the jsf-api and jsf-impl directories?

The plan was to delete these. If the project is a proper maven project they
won't be needed anymore. The IDE specific project files (like the Eclipse
ones that I more or less maintain), won't be needed anyone either then as
all IDEs recognise proper Maven projects. Finally the lib folder (which
kinda emulates Maven's .m2 folder) can be fully removed as well then.

> What is the plan for the api directory, since the classes formerly in
> jsf-api/src/main/java are now in the impl directory?

If I understood correctly, the Mojarra project had already moved to a
single jar solution, basically since the API contains many implementation
things already. The Mojarra jar as used by GlassFish is clearly one jar,
with two main packages. The impl directory reflects this directly.

> How do you generate the jsf-api.jar?

Also partially answering the previous question; the api folder contains a
pom.xml that specifically builds the API jar. It does this simply by taking
all API classes from the impl build, and packaging those separately. In the
same fashion, you can also build a jar with only the impl. classes (which I
used to have in the strict-impl sub folder, but I deleted that one again).

This API jar, just like the existing API jar, is only usable to compile
against, of course.

Hope this makes it more clear.

Kind regards,
Arjan Tijms

> Thanks,
> Ed
> --
> | | office: +1 407 458 0017
> | 12 business days until planned start of JSF 2.3 Final Approval Ballot
> | 2 business days until DevNexus 2017
> | 27 business days until JavaLand 2017