Windows Vista Forums
Vista Forums Home Join Vista Forums Windows 7 Forum Vista Tutorials Tags
Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks.

Go Back   Vista Forums > Misc Newsgroups > Indigo

Vista - Problem using MSQM via SRMP with WCF (Indigo) Feb 2006 CTP

 
 
Old 03-21-2006   #1 (permalink)
joerg@krause.net


 
 

Problem using MSQM via SRMP with WCF (Indigo) Feb 2006 CTP

Hi all,

I've a XP SP2 box in workgroup mode running MSMQ (message queuing). I
run also WCF Feb 2006 CTP to handle MSQM messages.

Using native communication works well, however, we need to use SRMP
(MSMQ via HTTP) and this make some trouble receiving messages. Sending
works well, to, using this endpoint definition, for instance:

<endpoint
name="ApplicationEndpoint"
address="net.msmq://appsrv2/msmq/private/boxcommunication"
binding="netMsmqBinding"
bindingConfiguration="ForwardBinding"
contract="My.ServiceModel.IJobProcess" >
</endpoint>

The binding simply sets <security mode="none"> as required by workgroup
mode.

Now I try to add a listener watching the queue. Here is the endpoint
definition:

<endpoint name="BoxCommunication"
address="net.msmq://localhost/msmq/private/boxcommunication"
binding="netMsmqBinding"
bindingConfiguration="JobBinding"
contract="My.ServiceModel.IJobProcess" />

As soon as I switch to Srmp I get this exception
(InvalidChannelBindingException):

"Unable to lookup queue with path '.\msmq/private/boxcommunication':
This
operation is not supported for Message Queuing installed in workgroup
mode"

Setting to Srmp is done that way:

host = new ServiceHost(typeof(JobProcessService), baseAddress);
foreach (ServiceEndpoint sep in host.Description.Endpoints)
{
NetMsmqBinding nmsq = (NetMsmqBinding)sep.Binding;
nmsq.QueueTransferProtocol =
System.ServiceModel.Channels.QueueTransferProtocol.Srmp;

}

As soon as I switch back to native mode I receive messages through
UnknownMessageReceived event and with unreconized SOAP header. The
latter is obvious to me, as I want and need SRMP.

I've tried different ways to define the address (however, for sending
messages the address is obviously perfect). Without "msmq" the
exception suggests to add this, if Srmp is being used. Strip out
"private" means that public queues are not supported (also clear to me,
as we're in workgroup mode).

The queue is on same machine as the application. No network traffic
involved. No firewall. I run the app as local Admin.

Any suggestions or ideas would be really helpful.

Thanks,

joerg


My System SpecsSystem Spec
Old 04-07-2006   #2 (permalink)
Yoel Arnon


 
 

Re: Problem using MSQM via SRMP with WCF (Indigo) Feb 2006 CTP

Hi Joerg,
Srmp protocol works only when sending messages (on the client side). The
server side should receive the messages like other MSMQ messages.

This is the same as in MSMQ "classic" - direct=http or https format name can
be used only for sending messages.

HTH,
Yoel
www.msmq.biz

<joerg@krause.net> wrote in message
news:1142939807.253627.203500@v46g2000cwv.googlegroups.com...
> Hi all,
>
> I've a XP SP2 box in workgroup mode running MSMQ (message queuing). I
> run also WCF Feb 2006 CTP to handle MSQM messages.
>
> Using native communication works well, however, we need to use SRMP
> (MSMQ via HTTP) and this make some trouble receiving messages. Sending
> works well, to, using this endpoint definition, for instance:
>
> <endpoint
> name="ApplicationEndpoint"
> address="net.msmq://appsrv2/msmq/private/boxcommunication"
> binding="netMsmqBinding"
> bindingConfiguration="ForwardBinding"
> contract="My.ServiceModel.IJobProcess" >
> </endpoint>
>
> The binding simply sets <security mode="none"> as required by workgroup
> mode.
>
> Now I try to add a listener watching the queue. Here is the endpoint
> definition:
>
> <endpoint name="BoxCommunication"
> address="net.msmq://localhost/msmq/private/boxcommunication"
> binding="netMsmqBinding"
> bindingConfiguration="JobBinding"
> contract="My.ServiceModel.IJobProcess" />
>
> As soon as I switch to Srmp I get this exception
> (InvalidChannelBindingException):
>
> "Unable to lookup queue with path '.\msmq/private/boxcommunication':
> This
> operation is not supported for Message Queuing installed in workgroup
> mode"
>
> Setting to Srmp is done that way:
>
> host = new ServiceHost(typeof(JobProcessService), baseAddress);
> foreach (ServiceEndpoint sep in host.Description.Endpoints)
> {
> NetMsmqBinding nmsq = (NetMsmqBinding)sep.Binding;
> nmsq.QueueTransferProtocol =
> System.ServiceModel.Channels.QueueTransferProtocol.Srmp;
>
> }
>
> As soon as I switch back to native mode I receive messages through
> UnknownMessageReceived event and with unreconized SOAP header. The
> latter is obvious to me, as I want and need SRMP.
>
> I've tried different ways to define the address (however, for sending
> messages the address is obviously perfect). Without "msmq" the
> exception suggests to add this, if Srmp is being used. Strip out
> "private" means that public queues are not supported (also clear to me,
> as we're in workgroup mode).
>
> The queue is on same machine as the application. No network traffic
> involved. No firewall. I run the app as local Admin.
>
> Any suggestions or ideas would be really helpful.
>
> Thanks,
>
> joerg
>



My System SpecsSystem Spec
 

Thread Tools


Similar Threads
Thread Forum
Problem with MS Digital Image Standard 2006 on Vista? Vista General
MS Streets & Trips 2006 Problem Vista General
Tiger woods 2006 & Worms 3d & Fifa 2006 Vista Games


Vista Forums is an independent web site and has not been authorized,
sponsored, or otherwise approved by Microsoft Corporation.
"Windows Vista", the Start Orb, and related materials are trademarks of Microsoft Corp.
© Designer Media Ltd

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46