when the tuckey urlrewrite will support jakarta and alternatives of tuckey urlrewrite - url-rewriting

Currently tuckey urlrewrite internally uses javax so im facing type mismatch error between jakarta and javax as my project uses jakarta to support tomcat 10.
So i wanted to know when the tuckey urlrewrite package is migrated to jakarta.
I want to know whether there are any other packages which can we used to replace tuckey urlrewrite to support UrlRewrite functionality in spring application.

If you are using Tomcat you should use it's built-in rewrite valve. https://tomcat.apache.org/tomcat-10.1-doc/rewrite.html

Related

How to replace Spring custom configurations with the new JBossWS descriptor configuration in JBoss 7.4?

While upgrading JBoss server from 6 to 7.4, I got to know that Spring integration is no longer supported in JBoss EAP 7. But in my project we have used Apache CXF dependency injection to provide WS endpoints. But as spring integration is no longer supported, I need to replace Spring custom configurations with the new JBossWS descriptor configuration but I got no references anywhere.
This approach is specified in below URL at point no: 5.1.2
APPLICATION MIGRATION CHANGES
Can somebody help me with this migration?
I tried by removing servlet dependency from web.xml and it was working but then I WS endpoints stopped working as I removed the dependency injection. PFA for reference

Spring boot 3 - Jakarta and Javax

In the new Spring boot 3 Release notes, They tells that this version is going to use Jakarta EE 9 (libs named as jakarta) instead of JEE (libs named as javax).
They advise developers to replace imported javax with jakarta in this article.
If I have a spring boot app with both, javax and jakarta libs, will the app work and be able to be deployed in a Jakarta compatible server (e.g. Tomcat 10)?
Thanks a lot.
The answer will really depend on which specific libraries you're using and how they interact with each other, but generally speaking trying to mix Java EE and Jakarta EE them would be a bad idea.
As an example, if you're writing a Spring MVC application then you'll be using the DispatcherServlet. In Spring Framework 6 this will require the Jakarta Servlet API. There's not going to be a way to make it work with the javax.servlet For other APIs, if you're using them directly and you're not making use of Spring abstractions that build on them, you may get away with having them on your classpath. I still wouldn't recommend it.
You could try to put the web app instead of in webapps into webapps-javaee like described in https://tomcat.apache.org/migration-10.html#Specification_APIs
Then TC10 will create a new war in webapps and unpack it as usual in webapps. I tried it with some of our pure TC8/9 Apps and it was working.

writing spring RESTful end point using java 1.4

Is there any way to develop spring based restful end point using jdk1.4(non annotation base approach because java 1.4 won't support) ?
I have oc4j server(oracle application server) version 10.1.3 which supports j2sdk 1.4 and servlet 2.4. I believe I won't be able to deploy a springboot restful web service in my oc4j server because of jdk1.4(minimum java version required for springboot is 1.6)
Yes I agree Spring Boot is not possible for my scenario. I am asking if it is possible to develop spring web-mvc using jdk 1.4 and servlet 2.4 version ?
You may need to use the XML based configurations for initializing spring context. A RESTful application can be built even without using Spring using Jersey or some other JAX-RS implementations, if you are not going to use any Spring capabilities.

Bluemix Jersey 1.8 415 media error

In using bleumix liberty with jax-rs1.1 ( inclusive jersey 1.8)
But I get 415 errors media not supported when I use it.
It works on tomcat, but bluemix liberty gives an error.
Any thoughts
Regards
Marc
Liberty jax-rs 1.1 based on Apache Wink, not Jersey. Is your jax-rs implementation using wink? Verify you are providing a wink implementation. Also, remove all the wink jars from your war to avoid conflicts and use what's provided by Liberty. You can either remove them manually from the war WEB-INF/lib, or change your pom.xml and add <scope>provided</scope> for the wink dependencies so that they are not packaged with the war. If you want to use Jersey instead, you will have to disable jax-rs 1.1 by providing a customized server.xml feature set.
The Liberty for Java starter application shows a basic implementation example in src/com/ibm/cloudoe/samples/HelloResource

How do I make JaxWsPortProxyFactoryBean use JAX-WS 2.1?

I'm working on a project that delivers web services using Jersey, which has a dependency on JAXB 2.1. I have to add a feature that fetches data from another web service. The way this has been implemented elsewhere uses a Spring JaxWsPortProxyFactoryBean.
When Spring tries to initialize this bean it fails with a : ClassCastException (com.sun.xml.bind.v2.runtime.JAXBContextImpl cannot be cast to com.sun.xml.bind.api.JAXBRIContext).
It appears that this is because JavaSE6 includes JAX-WS 2.0 API.
The only solution I have found suggests putting the 2.1 jars in the JRE endorsed directory. This isn't an option - I'm sharing a server with other application teams so I can't mess with the JRE.
Does anybody know of another way to make Spring use the 2.1 jars?

Resources