all groups > dotnet web services > september 2006 >
You're in the

dotnet web services

group:

How to compensate for missing header information in WSDL?


How to compensate for missing header information in WSDL? Lee Franke
9/26/2006 10:51:35 AM
dotnet web services:
The application that I want to use requires the header to contain a
username/password.

Example:

<soap:Header>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/04/secext">
<wsse:UsernameToken>
<wsse:Username>fluffy</wsse:Username>
<wsse:Password Type="wsse:PasswordText">bunny</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>

The problem is that the WSDL of the webservice does not contain any
information reagarding this header information (shouldn't it?).

So when I add a web reference in my client application there is no class
reference to allow me to set the Username and Password for the header.

What (and how) do I need to modify for the class reference to appear?
Reference.cs? The WSDL itself then reimport? I can get it to work by
building the XML then just HTTP Post it to the URL, but I would rather let
the program do it for me.

thanks,

lee


Re: How to compensate for missing header information in WSDL? q
9/26/2006 1:13:47 PM
What webservices system are you using? ASMX? WSE? WCF?

You need WSE or WCF to do that... ASMX doesn't really support anything
but the most basic of webservices. They don't account for any of the
stronger specs.

[quoted text, click to view]
Re: How to compensate for missing header information in WSDL? Lee Franke
9/26/2006 3:27:32 PM
I am using a asmx page (framework 1.1).

I would think that as long as it is defined in the WSDL that the classes
would be generated.

Is that not correct?

Also what is WSE and WCF? DotNet technologies.

(bit of a newbie to the webservices).

thanks,
lee
[quoted text, click to view]

Re: How to compensate for missing header information in WSDL? q
9/26/2006 9:03:22 PM
Web service security follows the WS-Security specification... ASMX has
no idea what that is. You need to get WSE3 from Microsoft. Google for
"wse3 dowload". Then read forever until you are sick of reading. WSE3
isn't that intuitive... fortunately WCF (a part of .NET 3.0) is almost
out.

Also, you need .NET 2.0. You will never get this working in .NET 1.1.
Almost nothing advanced will work in .NET 1.1. I hated that thing...

[quoted text, click to view]
Re: How to compensate for missing header information in WSDL? q
9/26/2006 9:06:29 PM
Come to think of it... you could do what I do at times. Half the time
people are giving me these LAME "wsdl" files for "web services" that
are NOT wsdl files that do NOT go with web services. They are only
"services" because they do NOT follow the specifications... so I ended
up writing my own webservice framework to deal with stuff like this...
at the heart of it was simple HTTP calls. You can do that too. If you
don't need https communication this is fairly easy. Web services are
really nothing more than XML going back and forth, you can do it all
manually if you want. It's not really that difficult.

That said... you really need to get on .NET 2.0 with WSE3 or get .NET
3.0. Using .NET 1.1 now adays just won't cut it...

[quoted text, click to view]
AddThis Social Bookmark Button