We are trying to replace a current CORBA based system with webMethods implementation as Middleware component. However the client application are not yet ready to accept the webServices SOA approach that we are trying to build.
Hence as a stopgap, we are planning to move from old CORBA based application to webMethods but provide exactly same CORBA object that client were getting before.
As far as my information goes CORBA adapater is not the right solution for this. Is there a way, we can expose webMethods services as CORBA object, exactly identical to a previously defined structure ?
I’m not seeing any advantage in doing that. Why port a CORBA-thing to WM but keep its interface CORBA? You can use IS as a CORBA client using RMIIOP and the let IS expose it in whatever way seems good. I would not see porting the CORBA server-side to IS, but maybe I’m missing something.
The client applications to current CORBA (middleware) framework do not want to change anything on their application in short term. Hence they would like to receive exactly same CORBA object from webMethods that they were getting from the previous CORBA application. Hence the transition from CORBA to webMethods will have no impact on huge client application.In phase 2, client applications will change to consume the webService exposed from webMethods.
I assume that you’ve already done the work to use IS to use web services to expose the resources that the company is currently using CORBA to expose. Eventually, the company will modify their existing CORBA code to use web services calls instead, but doesn’t want to do so just yet.
Instead of putting the CORBA code into IS, I’d suggest building a protocol translation layer that can be invoked from CORBA on one side and consumes the IS web services on the other. This layer can run wherever it makes the most sense to run, which in my opinion is not IS. The IS does not get cluttered up with CORBA or RMIIOP code and the layer provides a working example of how the existing code needs to change in the future.
Of course by building the translation layer, you are doing much of the work that should be done by the client application.
This is the best I can do given very little information of the “previous CORBA application” or the “huge client application”.