Re: Binary of HTTP config issues

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Sam Santiago (ssantiago_at_n0spam-SoftiTechture.com)
Date: 09/01/04


Date: Tue, 31 Aug 2004 22:51:44 -0700

Not sure, but when you see the packet trace you might see that you are
getting back some kind of HTTP error response vs. a binary stream therefore
causing a bogus error.

Here's another example of using the binary formatter with IIS and HTTP:

Remoting Example: Hosting in Internet Information Services
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconremotingexamplehostinginiis.asp

With Ethereal, once you see an HTTP packet, right click on it and select
Follow TCP Stream to view a window that's more readable. Click the Clear
button if you want to go back to full output list.

Thanks,

Sam

-- 
_______________________________
Sam Santiago
ssantiago@n0spam-SoftiTechture.com
http://www.SoftiTechture.com
_______________________________
"cduden" <cduden@netfusionservices.com> wrote in message
news:%23Yhzd69jEHA.1136@tk2msftngp13.phx.gbl...
> Ok, Ethereal looks a bit more comprehensive than what I am using, thanks.
> Assuming that it is using Binary -- if I use the following:
>
> Server:
>
> No channels defined, just the services
>
> Client:
>   <channels>
>     <channel ref="http" port="0">
>      <clientProviders>
>       <formatter ref="binary" />
>      </clientProviders>
>     </channel>
>    </channels>
>
> It works.   Question
>
> given that the above will function when I add the following to the server
> config:
>
>    <channels>
>     <channel ref="http">
>      <serverProviders>
>       <formatter ref="binary" />
>      </serverProviders>
>     </channel>
>    </channels>
> It ceases to function.  Any insight in to why that is?  I get the error
> listed above.
>
>
> "Sam Santiago" <ssantiago@n0spam-SoftiTechture.com> wrote in message
> news:OTMq9E8jEHA.3696@TK2MSFTNGP15.phx.gbl...
> > I see binary for sure.  I'm using the ethereal network protocol
analyzer:
> > http://www.ethereal.com/.  The HTTP content type is Content-Type:
> > application/octet-stream.  It's an open source analyzer so try it out.
> >
> > Thanks,
> >
> > Sam
> >
> > -- 
> > _______________________________
> > Sam Santiago
> > ssantiago@n0spam-SoftiTechture.com
> > http://www.SoftiTechture.com
> > _______________________________
> > "cduden" <cduden@netfusionservices.com> wrote in message
> > news:unfrz$7jEHA.2340@TK2MSFTNGP11.phx.gbl...
> > > I just cut and pasted your config settings into my server web config
and
> > > client appconfig.  It works great for me too Sam except when I inspect
> the
> > > payload of the traffic between client and server it is a soap envelope
> so
> > I
> > > don't think that the binary serialization is actually happening.
> > >
> > >
> > > "Sam Santiago" <ssantiago@n0spam-SoftiTechture.com> wrote in message
> > > news:%23rQMM57jEHA.3944@tk2msftngp13.phx.gbl...
> > > > This works for me:
> > > >
> > > > Server config file hosted in IIS.  Nothing special since channel
must
> be
> > > > HTTP and client will control formatting:
> > > >
> > > >   <system.runtime.remoting>
> > > >     <application>
> > > >          <service>
> > > >        <activated type="My.Class, MyAssembly" />
> > > >       </service>
> > > >     </application>
> > > >  </system.runtime.remoting>
> > > >
> > > > Client Config:
> > > >
> > > > <system.runtime.remoting>
> > > >       <application name="OrderServicesClient">
> > > >          <client url="http://localhost:8085/">
> > > >     <activated type="My.Class, MyAssembly" />
> > > >          </client>
> > > >    <channels>
> > > >      <channel ref="http"  port="0">
> > > >            <clientProviders>
> > > >                <formatter ref="binary" />
> > > >            </clientProviders>
> > > >      </channel>
> > > >     </channels>
> > > >       </application>
> > > >    </system.runtime.remoting>
> > > >
> > > > Thanks,
> > > >
> > > > Sam
> > > >
> > > > -- 
> > > > _______________________________
> > > > Sam Santiago
> > > > ssantiago@n0spam-SoftiTechture.com
> > > > http://www.SoftiTechture.com
> > > > _______________________________
> > > > "cduden" <cduden@netfusionservices.com> wrote in message
> > > > news:u4aQht7jEHA.644@tk2msftngp13.phx.gbl...
> > > > > I have tried:
> > > > >
> > > > > Server Web.config:
> > > > >  <system.runtime.remoting>
> > > > >   <application>
> > > > >    <channels>
> > > > >     <channel ref="http">
> > > > >      <serverProviders>
> > > > >       <formatter ref="binary" typeFilterLevel="Full" />
> > > > >      </serverProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >    <service>
> > > > >     <wellknown mode="SingleCall"
> type="NFC.UserManagement.UserManager,
> > > > > NFC.UserManagement" objectUri="UserManager.rem" />
> > > > >    </service>
> > > > >
> > > > >
> > > > >   </application>
> > > > >  </system.runtime.remoting>
> > > > >
> > > > > Windows Client:
> > > > >
> > > > >  <system.runtime.remoting>
> > > > >   <application>
> > > > >    <channels>
> > > > >     <channel
> type="System.Runtime.Remoting.Channels.Http.HttpChannel,
> > > > > System.Runtime.Remoting"/>
> > > > >      <clientProviders>
> > > > >       <formatter
> > > > >
> > >
> type="System.Runtime.Remoting.Channels.BinaryClientFormatterSinkProvider,
> > > > > System.Runtime.Remoting" />
> > > > >      </clientProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >   </application>
> > > > >  </system.runtime.remoting>
> > > > >
> > > > >
> > > > > AND:
> > > > >
> > > > > Server web config:
> > > > >    <channels>
> > > > >     <channel ref="http">
> > > > >      <serverProviders>
> > > > >       <formatter ref="binary" typeFilterLevel="Full" />
> > > > >      </serverProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >
> > > > >
> > > > > Client config:
> > > > >  <system.runtime.remoting>
> > > > >   <application>
> > > > >    <channels>
> > > > >     <channel ref="http" port="0">
> > > > >      <clientProviders>
> > > > >       <formatter ref="binary" />
> > > > >      </clientProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >   </application>
> > > > >  </system.runtime.remoting>
> > > > >
> > > > > AND Countless other permutations.  Using TCPTrace I can see what
is
> > > being
> > > > > sent and recieved  -- it is either SOAP or it doesn't work.
> > > Consequently
> > > > > the same calls work if I use the following:
> > > > >
> > > > >
> > > > > SERVER:
> > > > >    <channels>
> > > > >     <channel ref="http">
> > > > >      <serverProviders>
> > > > >       <provider ref="wsdl" />
> > > > >       <formatter ref="soap" typeFilterLevel="Full" />
> > > > >      </serverProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >
> > > > > CLIENT:
> > > > >
> > > > >    <channels>
> > > > >     <channel ref="http" port="0">
> > > > >      <clientProviders>
> > > > >       <formatter ref="soap" />
> > > > >      </clientProviders>
> > > > >     </channel>
> > > > >    </channels>
> > > > >
> > > > > Using the soap formater.  If I attempt to specify the client
> formatter
> > > and
> > > > > leave the server empty then it works but inspecting the payload
> > reveals
> > > > that
> > > > > it is using SOAP.  When I try to force binary it fails with the
> > > following
> > > > > error:
> > > > >
> > > > > Additional information: System.ArgumentNullException: No message
was
> > > > > deserialized prior to calling the DispatchChannelSink.
> > > > >
> > > > > Parameter name: requestMsg
> > > > >
> > > > > at
> > > > >
> > > >
> > >
> >
>
System.Runtime.Remoting.Channels.DispatchChannelSink.ProcessMessage(IServerC
> > > > > hannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders
> > > > > requestHeaders, Stream requestStream, IMessage& responseMsg,
> > > > > ITransportHeaders& responseHeaders, Stream& responseStream)
> > > > >
> > > > > at
> > > > >
> > > >
> > >
> >
>
System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IS
> > > > > erverChannelSinkStack sinkStack, IMessage requestMsg,
> > ITransportHeaders
> > > > > requestHeaders, Stream requestStream, IMessage& responseMsg,
> > > > > ITransportHeaders& responseHeaders, Stream& responseStream)
> > > > >
> > > > > at
> > > > >
> > > >
> > >
> >
>
System.Runtime.Remoting.Channels.Http.HttpHandlerTransportSink.HandleRequest
> > > > > (HttpContext context)
> > > > >
> > > > > at
> > > > >
> > > >
> > >
> >
>
System.Runtime.Remoting.Channels.Http.HttpRemotingHandler.InternalProcessReq
> > > > > uest(HttpContext context)
> > > > >
> > > > >
> > > > >
> > > > > What am I missing here?  How do I set this up to work forcing the
> > binary
> > > > > formatter over HTTP (hosted in IIS).
> > > > >
> > > > >
> > > > >
> > > > > Thanks,
> > > > >
> > > > > CMD
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Relevant Pages

  • Re: PLAXO.COM
    ... Sam wrote: ... The host 'http' could not be found. ... Account: 'http', Server: 'http', Protocol: ... In any case - Plaxo is somethign I have been spammed with before. ...
    (microsoft.public.windowsxp.newusers)
  • RE: Outlook RPC over HTTp deosnt work
    ... try to use RPC over HTTP to connect the Exchange Server. ... What SBS is running on the problematic Server? ...
    (microsoft.public.windows.server.sbs)
  • Re: RPC over HTTP
    ... I will help you with the PRC over Http issue in this thread. ... and go through the Internet option. ... On the Web Server Certificate page shows. ... Microsoft CSS Online Newsgroup Support ...
    (microsoft.public.windows.server.sbs)
  • Re: RPC over HTTP
    ... Are there any other ways of configuring the RPC over HTTP? ... Outlook Web Access, Business Website and so on. ... On the Web Server Certificate page shows. ...
    (microsoft.public.windows.server.sbs)
  • Re: MSAS Licensing Part II
    ... wish to use http access then you must have Enterprise Edition. ... PTS looks at the server name. ... You will note that all of this is totally transparent to the client. ...
    (microsoft.public.sqlserver.olap)