c# - Message Queue service messages don't arrive -
i've got wcf service on message queuing.
the service configured this:
<service name="emailservices.emailservice" behaviorconfiguration="servicebehaviour"> <endpoint address="mex" binding="mexhttpbinding" bindingconfiguration="" name="mexemailservice" contract="imetadataexchange" /> <endpoint name="netmsmqemailservice" address="net.msmq://w2k8services/emailservices_w2k8services" contract="emailservices.iemailservice" binding="netmsmqbinding" bindingconfiguration="netmsmq" /> <host> <baseaddresses> <add baseaddress="http://localhost:8008/emailservice" /> </baseaddresses> </host> </service>
the binding this
<netmsmqbinding> <binding name="netmsmq" exactlyonce="true" receiveerrorhandling="move" receivetimeout="00:45:00" maxreceivedmessagesize="2147483647"> <security mode="none" /> </binding>
pretty basic message queue service works fine locally
after generating proxy , calling function messages not arrive @ service. when stopping service won't come in queue although see 1 shortly appear in outgoing queue of client machine
a trace file says ok, except cant see if transactional. is...
i have no clue try anymore, should work isn't. else can try?
...sometimes see 1 shortly appear in outgoing queue of client machine
this means client enqueuing message , message being transmitted 1 machine (assuming transactional queue - needs you've specified "exactlyonce" in binding).
so, assuming transactional queuing, problem must on receiving side.
the first thing check queue permissions. receive message, service account running service needs following queue permissions:
- receive
- peek
- get permissions
- get properties
if these granted, next thing enable msmq event logging. should able see event message arrival on machine. problems after should able see using log.
Comments
Post a Comment