Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Error #2044 - ASSQL + Flash Builder (http://www.flasher.ru/forum/showthread.php?t=169473)

billion 05.10.2011 19:52

Error #2044 - ASSQL + Flash Builder
 
Помогите! Пытаюсь прикрутить ASSQL на localhost.... секунд 10 думает и выдаёт ошибку:

Error #2044: Необработанный ioError:. text=Error #2048: Нарушение изолированной среды: http://localhost/ASSQL-debug/ASSQL.swf не может загрузить данные из localhost:3306.

Код AS3:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                          xmlns:s="library://ns.adobe.com/flex/spark"
                          xmlns:mx="library://ns.adobe.com/flex/mx"
                          xmlns:assql="com.maclema.mysql.mxml.*"
                          minWidth="955" minHeight="600">
        <fx:Script>
                <![CDATA[
                        import mx.events.FlexEvent;
                        import mx.controls.Alert;
                        import com.maclema.mysql.events.MySqlErrorEvent;
                        import com.maclema.util.ResultsUtil;
 
                        private function handleConnected(e:Event):void {
                                service.send("SELECT * FROM PG030100 LIMIT 10");
                        }
 
                        private function handleError(e:MySqlErrorEvent):void {
                                Alert.show(e.text);
                        }
 
                        protected function grid_initializeHandler(event:FlexEvent):void
                        {
                                Security.loadPolicyFile("http://localhost:80/crossdomain.xml");
                        }
                ]]>
        </fx:Script>
 
        <fx:Declarations>
        <assql:MySqlService id="service"
                                                hostname="localhost"
                                                username="testik"
                                                password="testik"
                                                port="3306"
                                                database="db"
                                                autoConnect="true"
                                                connect="handleConnected(event)"
                                                sqlError="handleError(event)"  />
        </fx:Declarations>
 
        <mx:DataGrid id="grid" left="10" right="10" top="10" bottom="10" initialize="grid_initializeHandler(event)"
                                dataProvider="{service.lastResult}"
                                columns="{ResultsUtil.getDataGridColumns(service.lastResultSet)}" />
</s:Application>

файл политик лежит в http://localhost/crossdomain.xml

Код AS3:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>


billion 10.10.2011 08:41

На форуме много тем по AsSQL.... сразу видно многие пользуются! Так никто и не ответит?

Astraport 10.10.2011 10:28

Может попробовать crossdomain положить в папку http://localhost/ASSQL-debug/

Добавлено через 2 минуты
Ещё при инициализации:
Код AS3:

Security.allowDomain ( '*' );


billion 10.10.2011 12:48

ни то ни другое не помогло. ошибка та же:

Error #2048: Нарушение изолированной среды: http://localhost/ASSQL-debug/ASSQL.swf не может загрузить данные из localhost:3306.
ioError

Astraport 10.10.2011 12:56

Попробуйте тестировать на реальном хостинге.

Genzo 10.10.2011 12:58

скорее всего crossdomain должен отдаваться по тому же порту что и подключение socket

billion 10.10.2011 13:54

на сервере даже пробовать не хочу, т.к. на данном этапе ещё очень много локальных работ. и работать именно на localhost надо.

Цитата:

скорее всего crossdomain должен отдаваться по тому же порту что и подключение socket
это что за порт? 3306? и при чём тут сокеты?

Astraport 10.10.2011 17:10

Может быть ошибка в том, что вы грузите кроссдомен при инициализации датагрида. Зачем вообще нужна эта функция grid_initializeHandler()? Попробуйте без неё, а Security.allowDomain ( '*' ); вызывайте при инициализации всего приложения.

Добавлено через 3 минуты
Или это Security.loadPolicyFile("http://localhost:80/ASSQL-debug/crossdomain.xml"); вставте в инициализацию приложения. Можно и порт 80 поменять на 3306. Можно и без портов вообще пробовать. Все варианты примеряйте.

billion 10.10.2011 17:47

примерял все :) щас перепроверил всё что вы написали. не работает.

Astraport 10.10.2011 17:51

Я бы на реальном хостинге ещё проверил, чтобы убедиться что проблема не в сервере.


Часовой пояс GMT +4, время: 07:23.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.