Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / ASP.NET / Web Services / February 2005

Tip: Looking for answers? Try searching our database.

calling a dot net web services from unix

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Stu - 22 Jan 2005 18:35 GMT
Hi,

I have a web service which returns a record set and works well integrated
with an asp dot net page.
However if I decided to develop a unix app
will i be able to read the dataset as it is
or do i need to write the xml as text from the web service and supply a DTD.
Also any other pitfalls

TIA

Stu
erymuzuan - 22 Jan 2005 23:51 GMT
Dataset will always pose major problems with interoperablity because
difgramm is unique to .Net framework only. If you cannot do anything to
change the web services, then you'll have to process the dataset as
XmlDocument on other platforms. and this could be tricky if your dataset
contains lot of diffgram information.

The best way is avoid dataset, try to think in schema when designing a
web services. all you have to do is create a schema first then use
xsd.exe to generate .net code that can be used in web services.

regards
erymuzuan

> Hi,
>
[quoted text clipped - 8 lines]
>
> Stu
Chris Rolon - 23 Jan 2005 15:51 GMT
I agree that a DataSet is problematic for interoperability. Instead return an
XmlElement. Just use the DataSet WriteXml method to a write the DataSet out
to a stream and get the root element.

Of course, if the DataSet has changed, be sure to call AcceptChanges first.

Chris Rolon

> Dataset will always pose major problems with interoperablity because
> difgramm is unique to .Net framework only. If you cannot do anything to
[quoted text clipped - 21 lines]
> >
> > Stu
Christoph Schittko [MVP] - 23 Jan 2005 19:30 GMT
Erymuzuan's approach allows much better control over the XML
serialization format of the data. Since the original post was about
interoperating with a different platform, that level of control may be
crucial to getting the web services to talk to each other. A DataSet
expressed in XML is still a DataSet ;)

You also already hint on another issue. The DataSet offers a very
convenient programming model that doesn't jive well with
interoperability. You will have to write to code anyway to make that
programming model work for externally exposed Web services. Programming
against serialized objects will also help gearing the code inside the
service more towards interoperability.

Just my toughts.

HTH,
Christoph Schittko
MVP XML
http://weblogs.asp.net/cschittko

> -----Original Message-----
> From: Chris Rolon [mailto:ChrisRolon@discussions.microsoft.com]
[quoted text clipped - 41 lines]
> > >
> > > Stu
erymuzuan - 24 Jan 2005 00:22 GMT
This sort of problem posted again and again in this newsgroup simply
because some of us thinks that Web Services is just a method with
WebMethod attribute, rather that a set of messages in a document based
mesaging platform. even a simple web method like this can cause
interoperablity problem

[WebMethod]
public Employee[] GetEmployee()
{
    Employee[] emps = new Employee[10];
    return emps;
}

I think Microsoft is part to blame for making developers thinking that's
how to write web services. everytime you create a new asmx in VS.Net in
give the HelloWord

// WEB SERVICE EXAMPLE
// The HelloWorld() example service returns the string Hello World
// To build, uncomment the following lines then save and build the project
// To test this web service, press F5

//    [WebMethod]
//    public string HelloWorld()
//    {
//        return "Hello World";
//    }

Using tools like XmlSpy (my favorite) or CapeClear WSDL editor certainly
helps to make a better interoperable web services.  Christian Weyer's
contract-first tool for web services is a great tool to achieve this as
well, thou' i have it installed never really touch it. One of this
should be the first tool every web service developer should have in
their toolbox after the HelloWorld introduction

regards
erymuzuan

> Erymuzuan's approach allows much better control over the XML
> serialization format of the data. Since the original post was about
[quoted text clipped - 82 lines]
>>>>
>>>>Stu
Stu - 25 Jan 2005 13:45 GMT
Thanks for all your response on this
I like the dataset model cuase its very quick and convenient.

So ill probably end up putting some method overrides so u can choose dataset
or xml

Stu

> This sort of problem posted again and again in this newsgroup simply
> because some of us thinks that Web Services is just a method with
[quoted text clipped - 120 lines]
> >>>>
> >>>>Stu
Christoph Schittko [MVP] - 26 Jan 2005 03:36 GMT
I agree with all of that ;)

Glad to hear you like wscf. Have you taken a look at release 0.4
(released last December) with the new WSDL wizard? We'd love to hear
what you think.

Christoph Schittko
MVP XML
http://weblogs.asp.net/cschittko

> -----Original Message-----
> From: erymuzuan [mailto:erymuzuan@yahoo.com]
[quoted text clipped - 127 lines]
> >>>>
> >>>>Stu
Stu - 01 Feb 2005 10:05 GMT
One final question
Forgive my ignorance on the Unix Side of but if i have an ms web service say
function xyz(a,b,c,d) will they be able to use the proxy and call the web
service or do I need to process xml soap streams ?
Any good resources for dev MS web services for unix


> I agree with all of that ;)
>
[quoted text clipped - 148 lines]
> > >>>>
> > >>>>Stu
Christoph Schittko [MVP] - 02 Feb 2005 02:58 GMT
You have to hope that there is a tool to generate proxy classes on the
unix platform you're working with. The Apache Axis framework for example
ships with a tool called WSDL2Java (for Java) and WSDL2Ws (for C++) that
works very similar to the "Add Web Reference" wizard in Visual Studio.
The classes these tools generate will send XML xml straem to your MS web
service, just like .NET proxies do. Your web service sees no difference,
regardless what client sent the XML.

HTH,
Christoph Schittko
MVP XML
http://weblogs.asp.net/cschittko

> -----Original Message-----
> From: Stu [mailto:Stu@discussions.microsoft.com]
[quoted text clipped - 162 lines]
> > > >>>>
> > > >>>>Stu

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.