The moose likes XML and Related Technologies and the fly likes XML - Architecture Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login
JavaRanch » Java Forums » Engineering » XML and Related Technologies
Reply Bookmark "XML - Architecture" Watch "XML - Architecture" New topic
Author

XML - Architecture

Rama moorthy
Greenhorn

Joined: May 18, 2001
Posts: 8
Dear friends,
I have developed an enterprise application.Now my next assignment is to develop an xml based interface layer to the above application.I give below my requirement as under.
My Enterprise Application
|
|
XML Interface Layer
|
|
Multiple Databases
Please can anyone explain me the procedures to how to approach the above problem.
My application is for banking and shopping and i want to have common interface layer in XML so that it can be easily pluged into any leagacy database as well as any ERP solutions.
Please give your valuable sugesstions..
Ram
Ajith Kallambella
Sheriff

Joined: Mar 17, 2000
Posts: 5781
Lets start from listing your requirements. List everything that this "layer" should do in plain English sentences.


Open Group Certified Master IT Architect.
Sun Certified Architect(SCEA).
Rama moorthy
Greenhorn

Joined: May 18, 2001
Posts: 8
Originally posted by Ajith Kallambella:
Lets start from listing your requirements. List everything that this "layer" should do in plain English sentences.

Dear Ajith,
Thanks for your message..
My requirement goes like this..
I have developed a prototype application for online shopping and banking..
In shopping..
Mine is a generic solution and so for each customer it has to be customized so as to meet their requirements..suppose if i have common platform in xml so that it makes my application to easily adopted to the clients requirement and to their database setup..this is one of my question..
the second thing is that now i have developed my application with sample data in oracle backend..suppose my client says that he wants to have sybase as their back end..then i need to change my code to accomodate his requirement..
moreover the client may have morethan one type of RDBMS at their end and what is that i must do to make my application common for all RDBMS..
i want to have somesort intermediate archtecture in between my application and database keeping in mind tha above real time requirements..
for banking....
here also i want to have intermediate layer so that my application in my application requests the data from the application server of client..
to make it clear to you..suppose if i sell my above application to ISP providers,the request from the client will be forwarded to different banks associated with the ISP..so it is impractical for me to have each set of coding for each bank...hence i must have common coding with suitable intermediate layer to accesss to different bank's data bases..
I think i have conveyed my requirement..
Please elaborate me on how to approach this problem with your expertise in XML..
Kind regards,
Ram

Ajith Kallambella
Sheriff

Joined: Mar 17, 2000
Posts: 5781
Alright. If I understand it correctly, your goal is to write an XML data interchange layer between your application and the (open) database.
You have two ways to go - One is to write such an utility yourself in Java/C++ whatever is your language of choice. Simply get the resultset and format it as an XML document. The advantages of using a home-grown utility is that it will give you better control over performance tuning, customization etc. It can be closely tied to your business processes. The downside however, is that you may be spending time and money in reinventing the wheel.
The second option is to investigate what XML support is offered by the vendor. Oracle has extensive support, but I am not sure about other popular vendors like Sybase. Vendor products always integrate better with other tools/services offered by them when compared with frameworks developed in-house.
Hope this gives you something to think about
------------------
Ajith Kallambella M.
Sun Certified Programmer for the Java�2 Platform.
IBM Certified Developer - XML and Related Technologies, V1.
Akshaya Dash
Greenhorn

Joined: Jul 10, 2001
Posts: 2
Hi,
I have designed an EAI architecture simmilar to what you are looking for.
Brief description:
=====================
In a business environment, different client applications based on different technologies(like one app is VC++/VB based, One is SmallTalk based, one is HTML/ASP based, one is mainframe based) want to send requests and get the result/reply back from the back end databases (DB2). The number of transactions vary from 0.2-0.5 million trans/day.
The Architecture:
Each Client application put their XML requests in the MQ Queues. On arrival of the each MQ message a XMLServer transaction is triggered. The XMLServer calls following components:
1. XMLParser - which parses the XML Request and builds the DOM tree
2. The Traffic COP - This component based on the XML request calls the adaptor or API for the data supplying system passing the XML request info as parameters.
3. The Servicing system(who supplies result/data) api process the request and sends data.
4. The XML Builder - Takes the data from the servicing system and makes a XML doc.
5. Then the XML doc (reply) is sent back to the requesting client by MQ Queue (put q).
The entire architecture is independent of Client application techonology, easy to use (put an MQ Request) and scallable. Now this architecture is in production and receives 0.3 million trans/day from Internet/Client Server/Mainframe based applications.

Originally posted by Ajith Kallambella:
Alright. If I understand it correctly, your goal is to write an XML data interchange layer between your application and the (open) database.
You have two ways to go - One is to write such an utility yourself in Java/C++ whatever is your language of choice. Simply get the resultset and format it as an XML document. The advantages of using a home-grown utility is that it will give you better control over performance tuning, customization etc. It can be closely tied to your business processes. The downside however, is that you may be spending time and money in reinventing the wheel.
The second option is to investigate what XML support is offered by the vendor. Oracle has extensive support, but I am not sure about other popular vendors like Sybase. Vendor products always integrate better with other tools/services offered by them when compared with frameworks developed in-house.
Hope this gives you something to think about

 
 
subject: XML - Architecture
 
Threads others viewed
XML Examples
Transacton propagation across applications
Single sign on for Enterprise Application
Deploy standalone application on WebSphere?
xml (eXist db) transaction management
developer file tools