![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| 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. |
| |||||||
| |
| | #1 (permalink) |
| | 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 Specs![]() |
| | #2 (permalink) |
| | 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 Specs![]() |
| 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 | |||