Не удается добавить сообщения в эмулятор Azure из процесса Java

У меня есть процесс Java, которому необходимо взаимодействовать с приложением Azure C# через очереди хранилища.
При работе в Azure Web процесс Java может читать и записывать сообщения в очереди хранилища.
> Однако когда я запускаю процесс Java локально и пытаюсь установить связь с эмулятором Azure, я могу читать сообщения из очереди, но не могу записывать в очередь.

Ниже приведен код, который я использую, который зависает на последней строке, а затем истекает через несколько минут.
Любые предложения будут высоко оценены.

CloudStorageAccount acct;
if (configuration.equals(configurationTypeLocal)) {
   acct = CloudStorageAccount.parse(localStorageConnectionString);
} else {
   acct = CloudStorageAccount.parse(cloudStorageConnectionString);
}
CloudQueueClient client = acct.createCloudQueueClient();
_queue = client.getQueueReference(queueName);
_queue.createIfNotExist();
_queue.addMessage(new CloudQueueMessage(txt));

person Gilad Gat    schedule 20.11.2012    source источник
comment
Я отказался от этого и использую очередь облачного хранилища Azure как в локальном, так и в облачном режиме.   -  person Gilad Gat    schedule 26.11.2012


Ответы (1)


При разработке с помощью эмулятора важно убедиться, что версия эмулятора соответствует версии используемых вами клиентских библиотек. Если вы используете старую версию эмулятора с более новой версией клиентских библиотек, вы можете столкнуться с проблемами, когда функциональность, которую вы запрашиваете у службы, не была реализована в эмуляторе.

Учитывая, что вы сказали, что функциональность работает при использовании онлайн-сервиса, но не при использовании эмулятора, я предполагаю, что проблема в этом. Загрузите последнюю версию эмулятора, и все будет в порядке.

Джейсон

person Jason Hogg - MSFT    schedule 07.05.2014