Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new TCK tests for 5.0 #1852

Draft
wants to merge 11 commits into
base: 5.0
Choose a base branch
from
Draft

Add new TCK tests for 5.0 #1852

wants to merge 11 commits into from

Conversation

BalusC
Copy link
Member

@BalusC BalusC commented Oct 14, 2023

New TCK tests for:

TODO: this isn't working, GlassFish 7 basically complains Mojarra version can't be 5.0.0 or higher.

Caused by: org.osgi.framework.BundleException: Unable to resolve org.glassfish.main.web.weld-integration [228](R 228.0): missing requirement [org.glassfish.main.web.weld-integration [228](R 228.0)] osgi.wiring.package; (&(osgi.wiring.package=com.sun.faces.spi)(version>=4.0.0)(!(version>=5.0.0))) Unresolved requirements: [[org.glassfish.main.web.weld-integration [228](R 228.0)] osgi.wiring.package; (&(osgi.wiring.package=com.sun.faces.spi)(version>=4.0.0)(!(version>=5.0.0)))]

Can you please take a look @arjantijms

TODO: this isn't working, GlassFish 7 throws OSGI exception that Faces
SPI cannot be higher than 5.0.0
@BalusC
Copy link
Member Author

BalusC commented Nov 11, 2023

After bumping to GF 7.0.10 it now throws

Caused by: java.lang.NoClassDefFoundError: org/jboss/weld/environment/se/WeldContainer

@arjantijms
Copy link
Contributor

arjantijms commented Mar 24, 2024

I don't know about 7.0.10. but in general GlassFish (via OSGi/Felix) has automatic protection enabled against updating anything by a major version.

This protection is in META-INF/MANIFEST.MF of each jar via a version range. E.g.

bnd glassfish8/glassfish/modules/weld-integration.jar | grep faces

[...]

 org.glassfish.weld.jsf;uses:="com.sun.faces.spi,jakarta.el,jakarta.faces.application,jakarta.servlet";version="8.0.0"
com.sun.faces.spi;version="[4.1,5)"
jakarta.faces.application;version="[4.1,5)"
jakarta.faces.context;version="[4.1,5)"

You can edit the MANIFEST.MF files manually in each jar, or build GlassFish with an updated pom.xml for the new versions.

@dmatej
Copy link
Contributor

dmatej commented Mar 24, 2024

It is a default behavior of OSGI (maven felix plugin). It can be overriden, but increasing major version number usually means "breaking changes". And because OSGI is quite restrictive and respects also transitive dependencies, it causes many issues.

@BalusC
Copy link
Member Author

BalusC commented Sep 2, 2024

Still failing with 8.0.0-JDK17-M7.

3. java.lang.IllegalStateException: Unable to resolve
    org.glassfish.main.web.weld-integration [229]
    missing requirement
        &(package = com.sun.faces.spi) (version >= 4.1.0) (!(version >= 5.0.0))

Still unclear how to bypass from app on, I've never really worked with OSGI before.

We basically cannot add/run TCKs for Faces 5.0 until a GlassFish version is available implementing Faces 5.0.

Feels like chicken-egg.

Note that TCK doesn't work yet hence in separate branch/PR
@BalusC BalusC mentioned this pull request Sep 2, 2024
@BalusC BalusC added this to the 5.0 milestone Sep 2, 2024
@BalusC
Copy link
Member Author

BalusC commented Sep 3, 2024

Can anyone please help me sorting out this? This is blocking me from being able to develop new TCK tests for 5.0 because I'm unable to run them in order to verify if they work fine.

@BalusC BalusC changed the title Add new tck for #1713 Add new TCK tests for 5.0 Sep 5, 2024
@BalusC
Copy link
Member Author

BalusC commented Dec 7, 2024

Can anyone please help me sorting out this? This is blocking me from being able to develop new TCK tests for 5.0 because I'm unable to run them in order to verify if they work fine.

This has been stuck since October 2023. Please help me moving forward this. This is one of main reasons Faces 5.0 couldn't move on for EE11 and we were stuck with 4.1. We don't want another 4.2 situation again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants