Microservices application deployable in an old JavaEE application server - kubernetes

I've a big problem, and I hope that someone could help me!
I would like to refactor an old legacy JavaEE application.
The refactoring I've in my mind is very deep and I would like to redesign the application moving towards a microservices architecture using Java again.
Many frameworks exist for doing that, but I would like use one of the following: Quarkus (my favoutire), Microprofile and Vert.x.
The problem is that I got the indication that the new application must be deployable on old application servers, such as WebSpere 8.5.5, WebLogic 12c, and must be deployable in a Kubernetes environment without any application server.
Is there any way to meet this last requirement?
Any help will be highly appreciated!
Thanks a lot!

Related

Accessing JBoss 5 EJB3.0 from JBoss 7.1 EJB3.1

I have a bunch of services (EJBs, remotem stateless) running on JB-AS 5.1.0. Now I have a new AS7.1 on which I develop new Services (JEE6, EJB, CDI, ...)
I want to access the AS5.1 Services via remote JNDI.
Has anyone done this before and can help? I need my JEE6-Beans to have access to the AS5.1 client-jars, so I am trying to add them to ear/lib or create a module containing the jars, but so far without luck ...
The best solutions I have seen so far can be found here. You can follow this forum for more information.
Please post your findings here so others can help / benefit.
Good luck!

Is possible deploy applications developed with GWT 2.x on Jboss 4?

I want to know if is possible deploy GWT 2.x applications on server with support for the servlet spec 2.4 like JBoss 4.
I have reviewed the official documentation but apparently there is no dependences. So my questions are:
Is possible?
Is needed workarounds?
Any has some previous experience?
Yes It is possible. You can deploy GWT applicaions to any external web server like Tomcat, Jboss etc. Your question is bit wide in context. So, better look at some tutorials.
This tutorial will help you more. I have not gone into details of this but seems good.

Glassfish and JBI support, (SOA APPLICATION SERVERS)

We could see JBI in Glassfish V2 but it is not in V3, what's happening? Which application server is useful for SOA development?
can I deploy WSO2 on Glassfish or JBoss?
RGDS
I'm not sure this answer is definitive, just based on my own experience with these systems.
JBI isn't a Glassfish feature (if it ever was its news to me). Its a (kinda/sorta) Sun community standard which has many implementations (ServiceMix to name one of several) that can be installed on any J2EE container (such as Glassfish to name one). Although it was once very popular it seems to have fallen on hard times of late, perhaps simply because ESB hype got swamped by the new wave of cloud hype.
WSO2 is much larger and includes JBI as one of its many options. By default its based on its own embedded Tomcat, but WSO2 claims its possible to run it on an external Tomcat (I never managed to make this work). To my knowledge no one has tried or succeeded to make it work on Glassfish.

Websphere application server VS Jboss

I am looking for a kind of java ee application server. My company is using Websphere application server and I am reviewing jboss. I am not familiar with WAS, would anybody like to tell me which outstanding features provided by IBM WAS? And what the common features between WAS and JBOSS.
I write down my understanding firstly.
IBM WAS Outstanding(Specified) features:
1. LTAP
2. Monitor Tool
3. IDE(RAD) --- not sure is it free?
4. Integration with IBM portal(since we are using this product as well)
5. Integration with IBM MQ(above reason)
6. Webservice extension support(WS_*)
7. .....cool websphere library??? no idea, who would give me a sample?
Common features in WAS and JBOSS
1. Vendor service support
2. Java EE and EJB 3.0
3. Clustering
4. Any reasonable features for web2.0 application?
I don' think you should make comparison this way. Get the IBM team to provide you their list and speak to RedHat and get their list and then make the comparison.
RAD is not free by any means.
WAS is a good stack as it has a good track record in high volume sites and is the foundation of a number of IBM products (e.g Process Server, Portal Server etc).
The flipside of WAS is the learning curve is steep and the machine requirements are steep too.
Historically WAS was lagging in the support for latest versions of Java EE. Things are improving these days though
HTH
Manglu

Deploying an application without undeploying previous one and with no downtime?

I use Glassfish Java, and JSP over MySQL for my web applications. Many online people uses this web application and that web-site should not be down.
When I want to deploy a new war file, I should undeploy and deploy the new one for my application at server.
My question is that;
Is there any technology that doesn't need to undeploy my application and just change the appropriate classes so no need to redoploy it again?
There are java technologies that would allow you to replace classes on the fly (like JRebel). But since you're using Glassfish already, you should just start using clustering which is built into glassfish. You'll need either 2.1 or 3.1, as 3.0 does not support clustering. With a Glassfish cluster, you have a load balancer (Apache, Sun Web Server, hardware (Big IP, Coyote), etc) distribute the load among your cluster nodes. When you want to upgrade the app, you can technically do it one node at a time. Setting up the cluster is not the easiest thing in the world, but it is doable and it would get you some great benefits. You'll be able to scale the load by adding new hardware and even using Amazon (or whoever) cloud services. You'll be able to keep your site running even if the hardware fails on one of the nodes.
Personally I'm in the middle of converting from Glassfish 2.1 to 3.1. So far I like the management of the Glassfish 3.1 cluster much better, but I can't personally vouch for how it will run in production, though I have high expectations.
http://download.oracle.com/docs/cd/E18930_01/html/821-2432/gktqx.html#gktob
Jim is right, the best solution is currently to use a cluster and perform a manual rolling-upgrade.
But there is actually work ongoing to address your needs. We are working on a rolling-upgrade feature in a single standalone instance. To sum up in a nutshell (as the specifications have not been published yet), it will let you switch from an application version to another (see application versioning and the enable command) with no downtime. Stay tuned.