Link to home
Start Free TrialLog in
Avatar of mrjoltcola
mrjoltcolaFlag for United States of America

asked on

Serialize and Persist remote objects to Java and C# apps over Internet and Intranet

Gurus:

I am redesigning our application architecture and one of the concepts I want to inject is an ORM and centralized business logic w/Web services. I know the basics of ORM, and have an in-house ORM written in Perl I want to retire.

I want to use a single backend server to map objects to/from my Oracle database, and serve remote clients by serializing those objects out to remote Winform clients as well as Intranet Java, Perl and Ruby applications.

Here is my initial thinking:

Relational DB <-> ORM <-> (Web Services | Serialization Channel) <-> (Winform clients | ASP.NET apps | Ruby utilities)

1) Use C# as the Web services server, do serialization with SOAP, even though it is bulky. C# does XML and SOAP serialization out of the box. I can use NHibernate as the basis for the server.

2) I can use a Java server, Hibernate, and some sort of serialization technique.

Problem is I do not know what is out there, especially on the Java side. Which will interoprate with multiple languages.

3) Is there some sort of proxy solution, where I can run an ORM builtin to the client GUI app, that proxies over HTTP? I want to use ORM so I don't have to write the data access code for each object, but in my current design, I have to instantiate an object at the server level to serialize it out over the web. Am I on the wrong track with using the lower level .NET serialization stuff, and should I just move right to full SOAP/WSDL framework?

Thanks in advance.
ASKER CERTIFIED SOLUTION
Avatar of CEHJ
CEHJ
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of mrjoltcola

ASKER

I was on that track. I think my original question was worded poorly. Basically what I am struggling with is the whole convoluted process of instantiating an object on the main server just to serialize it to SOAP to a remote client which will turn it back into an object. So I'm going Database <-> ORM <-> Web server <-> Remote clients via/SOAP <-> Back to a C# or Java object.

You are right, though, we have diverse clients, so there isn't really an option to do remoting so SOAP seems the safest, unless we can narrow down to one language.

Thanks!
I understand what you're saying. It might be possible to persist the object in its XML, SOAP form so no instances are ever needed at the server