• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Devaka Cooray
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Knute Snortum
  • Bear Bibeault
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Piet Souris
  • Ganesh Patekar
Bartenders:
  • Frits Walraven
  • Carey Brown
  • Tim Holloway

XML - Architecture

 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
 
Sheriff
Posts: 5782
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Lets start from listing your requirements. List everything that this "layer" should do in plain English sentences.
 
Rama moorthy
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

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
Posts: 5782
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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.
 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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


 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!