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

Namespace switch #48

Open
Mailaender opened this issue May 31, 2024 · 4 comments
Open

Namespace switch #48

Mailaender opened this issue May 31, 2024 · 4 comments

Comments

@Mailaender
Copy link

It changed from javax to jakarta and OSGi Technology Whiteboard Implementation for Jakarta RESTful Web Services moved to the Eclipse Foundation. It is probably time for an update here as well.

@scottslewis
Copy link
Member

Hi @Mailaender. This provider was written to use the HTTP Service (registerServlet), as there was no whiteboard OSGI spec at the time.

I have no objection to moving to the whiteboard API and impls and I don't think it will be incredibly hard to do so. However, it will take a significant amount of refactoring of the existing ECF code, and it's probably going to be necessary for me to do much of that refactoring to avoid removing already-present extensibility in the provider (e.g. the ability to use jersey or other jaxrs impls).

One additional thing to look for: Is there an OSGi HTTP Service-like spec and implementation that uses jakarta servlet (new) namespace?...i.e. without using whiteboard (i.e. with a registerServlet that has jakarta servlet classes as arguments).

@Mailaender
Copy link
Author

Okay, then I misunderstood. I only want to change from javaxjakarta, actually.

@Mailaender
Copy link
Author

Easier said then do though as an upstream project still relies on javax

[ERROR] Cannot resolve dependencies of project org.eclipse.ecf.jaxrs:org.eclipse.ecf.provider.jaxrs.server:eclipse-plugin:1.11.1-SNAPSHOT
[ERROR]  with context {osgi.os=win32, osgi.ws=win32, org.eclipse.update.install.features=true, osgi.arch=x86, org.eclipse.update.install.sources=true}
[ERROR]   Software being installed: org.eclipse.ecf.provider.jaxrs.server 1.11.1.qualifier
[ERROR]   Missing requirement: com.fasterxml.jackson.jaxrs.jackson-jaxrs-base 2.17.1 requires 'java.package; javax.ws.rs.core [2.0.0,2.2.0)' but it could not be found
[ERROR]   Cannot satisfy dependency: org.eclipse.ecf.provider.jaxrs.server 1.11.1.qualifier depends on: java.package; com.fasterxml.jackson.jaxrs.base 2.9.2:

although I am not sure where exactly.

@scottslewis
Copy link
Member

Easier said then do though as an upstream project still relies on javax

[ERROR] Cannot resolve dependencies of project org.eclipse.ecf.jaxrs:org.eclipse.ecf.provider.jaxrs.server:eclipse-plugin:1.11.1-SNAPSHOT
[ERROR]  with context {osgi.os=win32, osgi.ws=win32, org.eclipse.update.install.features=true, osgi.arch=x86, org.eclipse.update.install.sources=true}
[ERROR]   Software being installed: org.eclipse.ecf.provider.jaxrs.server 1.11.1.qualifier
[ERROR]   Missing requirement: com.fasterxml.jackson.jaxrs.jackson-jaxrs-base 2.17.1 requires 'java.package; javax.ws.rs.core [2.0.0,2.2.0)' but it could not be found
[ERROR]   Cannot satisfy dependency: org.eclipse.ecf.provider.jaxrs.server 1.11.1.qualifier depends on: java.package; com.fasterxml.jackson.jaxrs.base 2.9.2:

although I am not sure where exactly.

Yeah. This is why I didn't do the changeover years ago unfortunately (the references to javax.servlet...in OSGI HTTPService and ECF provider code and javax.jaxrs...in ECF provider code and jersey, and jersey's dependencies [in this specific case, fasterxml but there could be others].

If you want to continue this changeover effort I will help as much as possible. Note I've already got a branch named: jersey_3_0_0 where I got much of the way...but was stopped by the OSGi HTTP Service requiring/using javax.servlet (for HTTPService registerService in jersey.server bundle). I can't remember at the moment whether there were other deps unresolved (e.g. jackson).

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

No branches or pull requests

2 participants