![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2009
Сообщений: 3
|
Здравствуйте.
Столкнулся вот с такими проблемами. Я пишу клиент-серверное приложение. Сервер на java (сервак GlassFish2, среда NetBeans). Клиент пишу на Flash ( только на Flash, не использую какие либо фрайемворки типа BlazeDS и никакого Flex). Сервак представляет собой WebService. Т.е. общаются клиент и сервер по SOAP. Проблема передать от сервера клиенту простые типы данных не возникает... 1) Как передать массив с сервера (java) клиенту(Flash (as2))? 2) Есть ли возможность передать объект некоторого сквоего класса? Есть возможность это решать с помощью сериализаци и десериализации. Но может есть как-дь более простое решение... Если нет, то можете привести пример сериализации, т.к. я с ней не очень знаком... Да, и переделывать массив в видете строки формата XML - решение не очень, хотелось бы как-дь другого решения... P.S.: Сил нет больше бороться с этим....=(( ![]() Заранее большое спасибо! Последний раз редактировалось Hunter25_09; 19.02.2009 в 18:02. |
|
|||||
|
Modus ponens
|
Ну так вы сами себе злой Буратино - У Флеша есть родной формат для сериализации и пересылки (AMF), а вы ему XML отдаете...
__________________
Hell is the possibility of sanity |
|
|||||
|
[+1 04.05.08]
Регистрация: May 2008
Адрес: Czech, Prague
Сообщений: 65
|
Вы всё не правильно делаете.
![]() Используйте RemoteObject + BlazeDS. ![]() Это очень простое и удобное решение. Во флексе будете дёргать свои Java - функции, как будтно вы в NetBeans. Многие ошибочно полагают, что это сложно. Это самый простой метод. Всё равно рано или поздно вы это поймёте. Все через это проходят. Serializing between AS and Java ![]() |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 3
|
Спасибо за помощь...
Я так понял иначе никак.... Эххх.... тогда надо все взвесить... и обдумать.... ![]() Спасибо за ссылку - почитаю. ![]() Добавлено через 6 часов 48 минут wvxvw: Меня заинтересовало вот что, т.к. AMF строится поверх SOAP то можно как то преобразовать формат отправляемого сообщения в AMF(или даже наверное легче изменить на стороне клиента..??) . Если можно, то подскажите как. Я посмотрел таблицу соответсвия типов, массивы простых типов передовать можно спокойно, правда протокол должен быть не SOAP а AMF. Последний раз редактировалось Hunter25_09; 20.02.2009 в 00:37. |
|
|||||
|
[+1 04.05.08]
Регистрация: May 2008
Адрес: Czech, Prague
Сообщений: 65
|
Цитата:
Цитата:
![]() Вопрос: Если вы используете вэб сервер GlassFish, почему решили отказаться от BlazeDS (как один из вариантов)? Вы должны чётко представлять все возможные варианты для принятия правильного решения. Я думаю, что вы просто боитесь использовать правильный путь для решения вашей задачи. Вы просто научились работать с WebService и не хотите с ним расставаться. ![]() Но как я уже писал выше, рано или поздно может потребоваться след: Цитата:
Последний раз редактировалось Foli; 20.02.2009 в 23:13. |
|
|||||
|
Modus ponens
|
AMF = ActionScript Message Format это как бы не протокол... это формат записи данных.
Т.е. вот вы хотите записать (float)1, и у вас есть куча вариантов, как это сделать, чтобы одна программа другую поняла. Вы можете это сделать так: <float>1</float>, а можете так: [побитно] 00000000 00000001 00000000 000000000, а можете так: 00000001 00000001 [первый байт указывает тип передаваемых данных + парсер знает, что если в тртем байте есть указатель а не значение, то значение во втором байте нужно "распаковать" до полноценного float, а не, скажем char]. Но вы это все не видите и никогда, практически, вручную с этим не работаете - у вас уже есть готовые АПИ для сериализации / десериализации. Ну и кроме того, в данном конкретном примере вы выиграете 800% в объеме передаваемой инфы. Да и это... в общении Флеш - сервер смысл использовать SOAP отсутствует напрочь. Я еще могу представить, зачем можно использовать REST (он все-таки немного по-экономнее) - это если нужно, чтобы ЯваСкрипт мог контактировать с теми же сервисами. Но если такое не планируется, то общаться пересылая ХМЛи туда и обратно - очень не продуктивно.
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 20.02.2009 в 16:14. |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 3
|
Спасибо всем за помощь! Решил все-таки не использовать ни Flex и BlazeDs и не WebService....=))
BlazeDs использовать не стал, т.к. убил весь день и не смог найти примеров и подробной инфы как связать BlazeDs+NetBeans(GlassFish). Сам принцип этой связки не очень пока ясен... А Flex использовать не могу т.к. это групповой проект и не все на это решатся.... Foli: Пройдясь по форуму, я заметил, что вы на BlazeDs не мало времени убили... Если вас не затруднит, можете скинуть пару ссылок с инфой... желательно где говорится как связывается java и BlazeDs (ну и с примерами желательно.... ).......................................................................... Так же нашел некоторый компонент на Flash http://www.wellconsidered.be/as3-webservice-component/ он распространяется с исходным кодом, можно подправить некоторые вещи для большей удобности,там все отлично будет работать без всяких затруднений..=)) ................................................................................ wvxvw: Цитата:
Пример действительно стоящий... формат сообщения решил создать что-то в похожем духе (в 16-й системе). Написать для парсировки несколько методов совсем не сложно, зато можно самому оперировать и изменять как вздумается..... Вот на таком выборе я остановлюсь (похоже что изобретаю велосипед, но объем передаваемой инфы очень важен....SOAP был действительно плохим выбором, но стремился к универсальности(чтоб клиент можно было написать не только на FLASH)) Последний раз редактировалось Hunter25_09; 21.02.2009 в 03:54. |
|
|||||
|
[+1 30.06.09]
Регистрация: Feb 2009
Сообщений: 27
|
использую на серваке glassfish, (ejb3)toplink, привожу ссылки по которым все настроил без проблем
http://livedocs.adobe.com/flex/3/htm..._access_4.html использую ejb3, для инжектирования из флеша пользуюсь либой http://www.adobe.com/cfusion/exchang...&extid=1089970 http://livedocs.adobe.com/blazeds/1/...ide/index.html http://www.brucephillips.name/blog/i...m-Java-to-Flex офф ресурс проджекта http://opensource.adobe.com/wiki/dis...lazeds/BlazeDS пользуюсь idea, но не понял вас про подключении к нетбинсу.. так же как любую другую ява библиотеку, и потом заверните все нужные либы в ear arhiv в war архиве который скачаете с оффсайта есть все либы и конфиги, просто скопируйте их в свой java проджект и поправьте свой web.xml |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|