Приложение Flex работает в bin-debug, но не в bin-release

Я разработал небольшое гибкое приложение, которое выполняет некоторые вызовы веб-службы, извлекает некоторые данные и возвращает данные в приложение.

Все работает нормально, пока я работаю внутри Flex Builder (eclipse) или пока я запускаю его из ProjectName\bin-debug.

Как только я пытаюсь развернуть его (запустить из ProjectName\bin-release или на веб-сервере), он перестает работать, и я получаю сообщение об ошибке: - Невозможно загрузить WSDL. Если вы в данный момент онлайн, проверьте URI и / или формат WSDL ( http://127.0.0.1/TimeSheet/TimeSheets.wsdl)

Я создал кросс-доменный файл, который я считаю правильным, и поместил его в корневую папку IIS C:\inetpub\wwwroot (я также просто для безопасности скопировал файл в C: \ inetpub и C:\inetpub\wwwroot\TimeSheet)

<?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <allow-access-from domain="*"/> <site-control permitted-cross-domain-policies="master-only"/> <allow-access-from domain="*" secure="false"/> <allow-http-request-headers-from domain="*"/> </cross-domain-policy>

Я также после прочтения Интернета попытался изменить свойства компиляции Project -> Properties -> Flex Compiler, изменив свойство -use-network= на true и false, а также свойство -debug.

Я верю, что если я смогу заставить работать бен-релиз, то все будет работать.

В чем разница?

1 ответ

@Amarghosh я пробовал localhost и 127.0.0.1 и имя сервера

@ Джефф Да, и это работает

Хорошо, у меня есть еще информация. Я выяснил, что причина, по которой он работает в папке bin-debug, а не в папке bin-release, заключается в том, что в папке bin-debug приложение запускается в локальной доверенной

Security Sandboxtype (sandBoxType.text = Security.sandboxType.toString())

И папка bin-release работает в localwithfile или localwithnetwork (в зависимости от того, какое свойство -use-network также установлено)

Чтобы заставить его работать в папке bin-release, все, что мне нужно было сделать, это добавить его на мои доверенные сайты в flash player.

Фантастика... за исключением того, что он должен работать на веб-сервере, чтобы люди могли получить к нему доступ в нашей локальной сети. Из того, что я видел, когда к SWF-файлу обращаются из "сети", т. Е. Не из локального файла на ПК, он всегда запускается в удаленном типе "песочницы", и он выдает ту же ошибку, что и выше, при работе в удаленном типе "песочницы".

Так есть ли какие-то особые правила, которым я должен следовать, чтобы разрешить моему маленькому приложению обращаться к wsdl при работе в удаленном типе песочницы?

Другие вопросы по тегам