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 / October 2004

Tip: Looking for answers? Try searching our database.

WSE2 and custom SoapExtensions

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Imago - 01 Oct 2004 08:38 GMT
Can you still have custom SoapExtensions on the client of an XML web
service whilst using WSE2?  What I'm finding is that when I inherit my
client proxy from the relevant WSE2 class (which seems to be the only
way to tell the client to use WSE2), WSE2 intercepts the response from
the web service BEFORE my custom SoapExtension gets called in the
'chain', regardless of what priority I put on the custom SoapExtension
attribute.

Many thanks
Hervey Wilson [MSFT] - 01 Oct 2004 09:05 GMT
> Can you still have custom SoapExtensions on the client of an XML web
> service whilst using WSE2?  What I'm finding is that when I inherit my
[quoted text clipped - 5 lines]
>
> Many thanks

You can have these, but they cannot be closest to the wire and they
cannot change the content-type of the message. If your SoapExtension
needs to process the XML content, you can optionally convert it to a
WSE2 filter and host it in the pipeline either in front or behind the
WSE filters.

The most common case that this causes a problem is for compression of
the wire content, we're looking to solve this in the next release. If
your extension doesn't do compression, can you tell me what you use it for?

Signature

This posting is provided "AS IS", with no warranties, and confers no rights.

Imago - 02 Oct 2004 14:05 GMT
> You can have these, but they cannot be closest to the wire and they
> cannot change the content-type of the message. If your SoapExtension
[quoted text clipped - 5 lines]
> the wire content, we're looking to solve this in the next release. If
> your extension doesn't do compression, can you tell me what you use it for?

Yep - pipeline filters seem to be no good for me becuase I can't get
at the raw HTTP transported message, only the SOAP part.  I'm wanting
to modify the message prior/after transport at the client end to allow
encryption, compression, wire level logging etc.  If a client defined
SoapExtension can't get in 'before' WSE2, then I guess the only option
is to extend the WSE2 soap client proxy class and override some of its
methods - is this approach possible? What would I have to do?

Also, AFAICT whereas on the server end you can specify a SoapExtension
either via an SoapExtensionAttribute on the XML web service method
itself, or via an entry in the web.config, on the client end only the
attribute approach can be used - which has the limitation that the
SoapExtension will always be in priority group 1 (as all attribute
extensions are), whereas a config-defined extension can get 'closer to
the wire' in group 0.  I wondered if I could get a client
SoapExtension in priority group 0 whether I'd be able to get to the
response meeage before WSE2 in the call chain.

Regards
Robin Meehan
Hervey Wilson [MSFT] - 03 Oct 2004 19:10 GMT
>>You can have these, but they cannot be closest to the wire and they
>>cannot change the content-type of the message. If your SoapExtension
[quoted text clipped - 13 lines]
> is to extend the WSE2 soap client proxy class and override some of its
> methods - is this approach possible? What would I have to do?

WSE is designed to do signing and encryption of the message, can you
tell us why you are doing this in your soap extension? If you are not
using WSE features, then there is no reason to activate the product for
your web services.

> Also, AFAICT whereas on the server end you can specify a SoapExtension
> either via an SoapExtensionAttribute on the XML web service method
[quoted text clipped - 5 lines]
> SoapExtension in priority group 0 whether I'd be able to get to the
> response meeage before WSE2 in the call chain.

Generally no, the implementation in WSE2 means that it is controlling
the wire. You can reconfigure WSE2 SP1 to replace the component in the
product that reads/writes from the wire - the ISoapFormatter
implementation. You might configure your own SoapFormatter into the HTTP
transport and then override the serialization / deserialization of the
message. This still doesn't give you direct access to the HTTP level stream.

Signature

This posting is provided "AS IS", with no warranties, and confers no rights.

Roman Kiss [MVP] - 01 Oct 2004 16:51 GMT
have a look at my article
http://www.codeproject.com/cs/webservices/DIMEBridge.asp

Roman

> Can you still have custom SoapExtensions on the client of an XML web
> service whilst using WSE2?  What I'm finding is that when I inherit my
[quoted text clipped - 5 lines]
>
> Many thanks

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.