访问Windows Server 1.1的Service Bus时,“在指定的地址没有托管服务”

时间:2013-10-08 01:53:47

标签: servicebus

[在Azure forums上交叉发布,因为我没有得到任何答案]

您好,

我已经在使用SQL Express的Windows 8 Pro开发计算机上安装了用于Windows Server 1.1 Preview的Service Bus。我的帐户是本地管理员。

虽然检查队列是否存在似乎有效(至少没有产生任何错误),但在尝试创建队列时遇到异常,说“没有服务托管在指定的地址”。

任何帮助都将不胜感激。

谢谢, 托马斯

更新:因为我遵循these instructions,所以缺少域名绝对不是问题。我也确定我的身份验证数据是正确的,因为如果我更改了密码,对.QueueExists()的调用就会失败。

但是,在调用.CreateQueue()

时,我收到以下异常
A first chance exception of type 'Microsoft.ServiceBus.Messaging.MessagingEntityNotFoundException' occurred in Microsoft.ServiceBus.dll
System.Transactions Critical: 0 : 
<TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Critical">
  <TraceIdentifier>http://msdn.microsoft.com/TraceCodes/System/ActivityTracing/2004/07/Reliability/Exception/Unhandled</TraceIdentifier>
  <Description>Unhandled exception</Description>
  <AppDomain>ServiceBusTest.vshost.exe</AppDomain>
  <Exception>
    <ExceptionType>Microsoft.ServiceBus.Messaging.MessagingEntityNotFoundException, Microsoft.ServiceBus, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</ExceptionType>
    <Message>The remote server returned an error: (404) Not Found. No service is hosted at the specified address..TrackingId:ab98e78f-5bd0-43df-92dc-5703b9f7f5e1_GAdditive,TimeStamp:10/13/13 8:45:46 AM</Message>
    <StackTrace>   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
      at Microsoft.ServiceBus.Common.AsyncResult`1.End(IAsyncResult asyncResult)
      at Microsoft.ServiceBus.NamespaceManager.OnEndCreateQueue(IAsyncResult result)
      at Microsoft.ServiceBus.NamespaceManager.EndCreateQueue(IAsyncResult result)
      at Microsoft.ServiceBus.NamespaceManager.CreateQueue(QueueDescription description)
      at ServiceBusTest.Program.Main(String[] args) in c:\Users\Thomas\Documents\Visual Studio 2012\Projects\ServiceBusTest\ServiceBusTest\Program.cs:line 40
      at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
      at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
      at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
      at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
      at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
      at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
      at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
      at System.Threading.ThreadHelper.ThreadStart()</StackTrace>
    <ExceptionString>The remote server returned an error: (404) Not Found. No service is hosted at the specified address..TrackingId:ab98e78f-5bd0-43df-92dc-5703b9f7f5e1_GAdditive,TimeStamp:10/13/13 8:45:46 AM</ExceptionString>
    <DataItems>
      <Data><Key>DisablePrepareForRethrow</Key><Value></Value></Data>
      <Data><Key>Microsoft.ServiceBus</Key><Value>Microsoft.ServiceBus</Value></Data>
    </DataItems>
    <InnerException>
      <ExceptionType>System.Net.WebException, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
      <Message>The remote server returned an error: (404) Not Found.</Message>
      <StackTrace>   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
        at Microsoft.ServiceBus.Messaging.ServiceBusResourceOperations.CreateOrUpdateAsyncResult`1.&amp;lt;GetAsyncSteps&amp;gt;b__14(CreateOrUpdateAsyncResult`1 thisPtr, IAsyncResult r)
        at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
      </StackTrace>
      <ExceptionString>System.Net.WebException: The remote server returned an error: (404) Not Found.
        at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
        at Microsoft.ServiceBus.Messaging.ServiceBusResourceOperations.CreateOrUpdateAsyncResult`1.&amp;lt;GetAsyncSteps&amp;gt;b__14(CreateOrUpdateAsyncResult`1 thisPtr, IAsyncResult r)
        at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
      </ExceptionString>
    </InnerException>
  </Exception>
</TraceRecord>

2 个答案:

答案 0 :(得分:5)

我按照MSDN上的示例代码进行操作,但我的错误完全相同。我花了一个小时试图找出问题所在,然后我找到了post,这解释了问题。基本上,您需要安装Service Bus 1.0 Nuget软件包而不是1.1版本,这会导致一些不兼容问题。以下文字引自有用的博客文章

  

该问题的一个解决方案是按照说明进行操作   在MSDN文章中提供升级到“Windows Azure Pack:   服务总线1.1“涉及卸载服务总线   Windows 1.0并使用版本为2.1.0.0的Microsoft.ServiceBus.dll。

     

另一个解决方案是删除Nuget包(ServiceBus 1.1 for   Windows Server)并安装(ServiceBus 1.0 for Windows Server)   这将添加版本为1.8.0.0的Microsoft.ServiceBus.dll。

我已将我的示例代码(设置,发送和接收消息)的详细信息放在博客帖子中here

答案 1 :(得分:3)

所以最终证明最新版本的Service Bus客户端库(Microsoft.ServiceBus.dll v2.1.3)与Service Server for Windows Server v1.1预览版不兼容...切换回v2.0.1解决了这个问题。