Glassfish and JBI support, (SOA APPLICATION SERVERS) - jboss

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.

Related

Microservices application deployable in an old JavaEE application server

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!

Spring Tool Suite 4 - is Pivotal tc server deprecated?

I was using STS3 and decided to move to STS4. I got it set up and I imported my projects from the STS3 workspace. These mostly made the transition OK, as I am just learning some basic things, mostly what I have is STS "getting started guides" sorts of projects.
However, I didn't see the default Pivotal tc server in the servers tab, and when I opened the "Define Servers" dialog, "Pivotal tc server" is not available.
Did I miss a step in setting up STS4 or is tc Server no longer the default?
The default Spring Tools 4 distribution doesn't include the Pivotal tc Server Developer Edition anymore (as we did with STS3). This doesn't mean at all that the Pivotal tc Server project is deprecated or anything like that. The reason why we don't include that by default anymore is that the Spring Tools 4 are focused on Spring app development using Spring Boot, which usually happens via running the boot apps via the embedded Tomcat option. As a side effect of this, the distribution got smaller and purely open-source... :-)
But those are the only reasons. We still support running Spring Boot applications in locally installed servers like Tomcat or Pivotal tc Server.
Same question asked differently was answered here
Pivotal server is not included in STS 4
Apparently it is no longer bundled by default, but you can install it. I don't think there was any mention of this change in the Pivotal articles about differences between STS3 and 4.

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.

EJB2 on different JBoss versions

I need to use some EJBs which are deployed on JBoss version 4.x from another EJB deployed on JBoss version 3.2.x. Is this possible?
I ask because I have a third party application which uses some strange bridge's to do that and don't know why (though I haven't try to do this on my own).
This is unfortunately not possible. One of the major drawbacks of remote EJBs is that there is nothing in the specification that guarantees or even suggests any kind of interoperability between different vendors or between different EJB versions from the same vendor.
In practice I found that at least with JBoss AS it never works. Even minor upgrades break binary compatibility completely. There have been some very hacky attempts with special class loaders that are only been given access to the client libs of the target JBoss AS, but this is very tricky to get right.
I guess this "strange bridge" you are talking about is using such a trick. Kudos to whoever build that bridge for getting this to work at all.
See this topic I started on the JBoss community forum for some more details: http://community.jboss.org/message/587180