Hi :
I am creating a queue application using Service broker. I was able to send and receieve messages between 2 databases in the same instance. Now I am trying to communicate b/w 2 different instances. I am getting the following error...
The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied..
The routing informations is as follows
DROP
ROUTE SERVERROUTECREATE
ROUTE SERVERROUTEWITH
BROKER_INSTANCE
= 'D6F1721F-E7A2-4497-8890-FD4C2AAD98FE',SERVICE_NAME
= 'SERVERSERVICE' ,ADDRESS
= 'TCP://10.23.3.12:6022';GO
I also check the sys.routes and the entry is correct. I was also trying to debuggin using SQL profiler...but it didnt help much.
How do I fix this Your help is appreciated.
Thanks,
Pramod

The target service name could not be found.
RamaGudimetla
Rushi:
All over again I created the service broker with separate new instances. This time I see transmission status empty in transmission queue.
But in Sql profiler I still get the same message.The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied.
How do I approach this
Thanks,
Pramod
JonathanV
You should not be seeing two separate error messages in transmission_status and profiler for the same dialog. One is related to routing and the other to security. Is there just one dialog running (see sys.conversation_endpoints) Could you also send your entire scripts to me (Rushi (dot) Desai (at) microsoft (dot) com), so that I can take a look
Thanks,
Rushi
P Liedman
PaulDaly
Hi Rushi:
This is the send message.
Use testdb1_db1
GO
-- Send a Message from PKUMARTEST_SERVICE on pkumartest/testdb1_db1 to
-- Server_service on pkumar/testserver_db.
DECLARE
@dialog_handle uniqueidentifier,@msg
XMLBEGIN
DIALOG CONVERSATION @dialog_handle FROM SERVICE PKUMARTESTSERVICE1 TO SERVICE 'SERVERSERVICE' ON CONTRACT MainContract WITH ENCRYPTION = OFF ;set
@msg = '<name> This is pramods sdfsdf message </name>';-- Now Sending a message note we are using
-- SendMessageType since it is defined in the contract
-- that it is to be sent only by initiater
SEND
ON CONVERSATION @dialog_handle MESSAGE TYPE SendMessageType (@msg)In SQL PROFILER I have turned on all events.
The message its displaying is
Broker:Message Classify The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied.
cphtsu
Is the route in the correct database (i.e. testdb1_db1)
select * from testdb1_db1.sys.routes;
Rick Murtagh
Hi Rushi:
This is displayed in sql Profiler.
The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied...
The earlier one is from sys.transmission_queue transmission status field.
Experienced
Yes the route is correct. Here is the infor.
AutoCreatedLocal 65536 1 NULL NULL NULL LOCAL NULL
SERVERROUTE 65553 1 SERVERSERVICE D6F1721F-E7A2-4497-8890-FD4C2AAD98FE NULL TCP://10.23.3.12:6022 NULL
Thanks,
Pramod
Jonathan Stratford
What did you change to fix the routes problem How did the error message change from that to this one
Are you using non-default collation for the server, database or your session
FLx
It says :
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 5.1 (Build 2600: Service Pack 2)
_mirko
Hi Rushi:
I checked my development servers...they have service pack 1 and my local machine has service pack2.
Thanks for throwing the light on the Sql Server version. It worked.
Pramod
JimSornig
Service name is case sensitive. Verify that you are specifying 'SERVERSERVICE' in BEGIN DIALOG. Are you specifying a broker instance in begin dialog
Profiler should give you precise information what is going on. Are you sure you have enabled all Broker events
JackRicky
In sys.transmission_queue the transmission status shows this error msg...
Dialog security is not available for this conversation because there is no remote service binding for the target service. Create a remote service binding, or specify ENCRYPTION = OFF in the BEGIN DIALOG statement.
As you can see...I specify Encryption = off in my send dialong.