Почему Flash player бросает ошибку песочницы в этом случае?

Если Вы говорите об автоматической сериализации XML объектов, проверяете Castor:

Castor является платформой привязки данных С открытым исходным кодом для Java [TM]. Это - кратчайший путь между объектами Java, XML-документами и реляционными таблицами. Castor обеспечивает привязку Java-to-XML, персистентность Java к SQL, и т.д.

19
задан Simon 2 December 2009 в 08:57
поделиться

9 ответов

Аналогичная проблема здесь указывает на то, что localhost не был разрешен до 127.0.0.1.

Вы можете попробовать переключиться на IP-адрес и посмотреть, поможет ли это.

1
ответ дан 30 November 2019 в 05:15
поделиться

Вы можете попробовать еще несколько вещей в коде с классом Security в дополнение к yoru crossdomain.xml

Попробуйте:

Security.allowDomain("*")
Security.allowInsecureDomain("*")

Или если вы загружаетесь с внешних серверов за пределами aporoved разрешенный хост:

Security.allowDomain(loader.contentLoaderInfo.url)

Затем медленно включайте его, пока не столкнетесь с ошибкой.

Убедитесь, что вы можете напрямую попасть в файл политики, и на этом порте не запущено ни одного блока или другого приложения. Обычно, когда я запускаю сокеты, я устанавливаю более 5000, чтобы убедиться, что порт не используется. Или попробуйте несколько разных портов.

Также в качестве простой проверки убедитесь, что вы назвали его crossdomain.xml и все в нижнем регистре. У меня были программисты выдергивать волосы, и это оказалось причиной.

1
ответ дан 30 November 2019 в 05:15
поделиться

попробуйте поставить пробел перед закрывающим тегом xml "/>", как в предложениях dan_nl, например:

Не смейтесь, я просто решил проблему, очень похожую на вашу (и это действительно похоже на ошибку парсинга IMHO)

1
ответ дан 30 November 2019 в 05:15
поделиться

Вы пробовали добавить элемент allow-http-request-headers-from?

<allow-http-request-headers-from domain="*" headers="*" />

Или указать фактические порты вместо * для элемента allow-access-from?

<allow-access-from domain="*" to-ports="843,45455" />
2
ответ дан 30 November 2019 в 05:15
поделиться

By any chance... is this occurring on Windows Vista? Is the IP address specified as a host name? If so, see this.

Or maybe it's occurring while the profiler is active? If so, see this.

1
ответ дан 30 November 2019 в 05:15
поделиться

При отправке файла политики сервер всегда должен отправлять нулевой байт после xml политики. Из приведенного выше описания не ясно, отправляется ли нулевой байт, и это может в конечном итоге запутать Flash-плеер.

1
ответ дан 30 November 2019 в 05:15
поделиться

Я тестировал это локально, и, похоже, все работает нормально, пока сокет не будет закрыт. Разве розетка не должна закрываться? После того, как сообщение отправлено клиенту Flex, код Java выполняет:

_in.close();
_out.close();
_socket.close();

Затем клиент Flex получает нарушение песочницы при следующей попытке связи с сокетом. Если я снова создаю новое соединение сокета, то отправка и получение работают нормально, а затем закрывается. Но примерно через минуту я получаю еще одно нарушение песочницы. Интересно, пытается ли Flash проверить сокет и, поскольку он закрыт, выдает нарушение песочницы?

3
ответ дан 30 November 2019 в 05:15
поделиться

Это может помочь, а может и не помочь, но у нас были похожие проблемы. Мы получали ошибку безопасности, но она была непоследовательной. Я создал интерфейс и работал с разработчиком, который имел дело с Socket, написанным на PHP. Проблема, казалось, заключалась в том, что действительно было состояние гонки, когда Flash пытался подключиться к сокету до получения файла политики. Итак, в интерфейсе я создал повторную попытку в обработчике ошибок безопасности, который будет запускаться определенное количество раз, прежде чем сдаться, а также установил тайм-аут с 20 секунд по умолчанию до 6 или 8. Обычно он ловит 2-й. попробуйте, и это действительно помогло, но были случаи, когда для подключения требовалось 8-10 секунд, что не было оптимальным решением.

В ходе моих поисков наткнулся на несколько ссылок, и в этой что-то говорилось о настройке задержки на сервере, седьмой пост не опубликован: http://projectdarkstar.com/forum/?action=printpage;topic=1134.0

В конце концов мы загрузили и использовали файловый сервер политик Python из этой статьи Adobe, и он работает безупречно, я могу » Не объясните почему, я не серверный парень, но, возможно, стоит попробовать:

хорошо, я могу разместить только 1 гиперссылку, так как я новый пользователь, странно. Выполните поиск «Настройка файлового сервера политики сокетов», и он должен сразу появиться, в этой статье на сайте Adobe есть файлы примеров.

1
ответ дан 30 November 2019 в 05:15
поделиться

Я думаю, что Джеймс Уорд прав - сейчас я работаю с Sockets, и на днях я столкнулся с этой проблемой. Я нашел сообщение, в котором говорилось, что если клиент Flash не закрывает Socket при отправке события COMPLETE, это может привести к ошибке, которую вы видите. Я добавил код для закрытия клиентского Socket на COMPLETE, и пока все работает нормально.

0
ответ дан 30 November 2019 в 05:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: