-2

Background:

wiki says: Services that can be regarded as middleware include enterprise application integration, data integration, message oriented middleware (MOM), object request brokers (ORBs), and the enterprise service bus (ESB).

Below is the middle ware based 3-tier architecture that I worked for, where 4 components - client, middleware and two managers, all are java based systems and RMI aware.

enter image description here


Middle ware was introduced in the architecture(above) mainly for data integration(business logic):

  • Perform integration of different data(of business logic) coming from multiple managers
  • Presentation layer(for client) to provide particular format of data, after integration
  • Authentication/Authorisation/Security for client access.

To generalise, above are some main reasons to introduce middle ware, in any 3-tier architecture product.

As mentioned here, RMI is just providing Addressing, Synchronization, Encoding, Mobility but not interoperability, aspects of communication, in the above architecture and nothing more than that. RMI itself is not a middle ware


Just to imagine migrating the above architecture from RMI based to Axis2, all POJO in those 4 components(including middleware) should be web enabled using Axis2. Functionality of middle ware(above) remains same.

Axis2 would just enable interoperable communication between those 4 components using SOAP or REST(v2) protocol and nothing more than that.

But in this paper, Axis2 is mentioned as middle ware. It is an Implementation of JAX-WS specification.


What does it mean to say that Axis2 is a middleware? It does not execute business logic.

overexchange
  • 15,768
  • 30
  • 152
  • 347
  • Your definition is not correct. Middleware has nothing to do with business logic whatsoever. RMI most certainly *is* middleware, as is Axis2, as are message brokers, and a large number of other things, *not* including application components. – user207421 Jan 02 '18 at 03:58
  • @EJP For middle ware to consider as application component, please check slide#21 and slide #24, [here](https://www.ime.usp.br/~reverbel/SMW-07/Slides/alonso-ch1.pdf). – overexchange Jan 02 '18 at 18:10
  • I have no intention of doing any such thing. 'Middleware' has had a well-defined meaning in IT for decades, and this isn't it. Arbitrary Internet resources notwithstanding. – user207421 Jan 02 '18 at 23:28
  • @EJP That is the presentation from his [book](http://www.springer.com/in/book/9783540440086). Arbitrary internet resource.None of your comments make sense to me, except using some bunch of English words. – overexchange Jan 03 '18 at 00:57
  • Well that's only to be expected. Few of your recent *questions* have made any sense to me. 'Middleware' means things like message brokers, J2EE, CORBA ORBs, Axis2, RMI, ... These are all *products* or *services*, and they are application-agnostic. Merely sticking a piece of the application into the middle of two other pieces of it doesn't make it middleware. [Wikipedia](https://en.wikipedia.org/wiki/Middleware) and the IETF both use this definition, and I don't really care how many arbitrary sources you can find on the Internet that say otherwise. – user207421 Jan 03 '18 at 04:50
  • @EJP Your referred link says: *Services that can be regarded as middleware include enterprise application integration, data integration, message oriented middleware (MOM), object request brokers (ORBs), and the enterprise service bus (ESB)*. In the above query, middle ware is mainly performing data integration. Isn't that considered as business logic? For your point, that says, not including application components, looks incorrect. – overexchange Jan 03 '18 at 08:00

2 Answers2

1

your question seems to be opinion based, but lets try to answer.

I believe your intuition is correct. IMHO Axis2 is a service framework, I woudn't call it middleware as under the term middleware I understand much broader functionality.

On the other side - the term middleware is not defined very strictly, so it all depends how broad/abstract definition you make.

When using Axis to provide message transformation (SOAP to Java), some security features it can be understood as middleware as the Axis is not executing any business logic (then even RMI would fit into the middleware definition)

Summing up - calling the Axis2 framework as middleware is IMHO unfortunate. Now the question is if the authors were trying to use buzzwords or they did not find better title

gusto2
  • 11,210
  • 2
  • 17
  • 36
0

If the definition for middleware is like - "a generic term used for defining a middleman while communicating two different technologies" Then Axis can be named as middleware. I think they have considered this generic definition.

But mostly used middleware is two types-

  • Message Oriented Middleware(MOM) ex- MQs

  • Enterprise Service Bus(ESB) ex- Mule ESB, TIBCO, Camel etc.

Myth
  • 86
  • 2
  • 10