Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   xml data binding (http://www.flasher.ru/forum/showthread.php?t=104883)

mip 04.12.2007 12:24

xml data binding
 
re all!
Вобщем возникла такая задача:
хотелось бы найти тулс который бы генерил классы
actionscript 3 из XML Scheme (XSD), т.е. осуществляя mapping
xsd и as3, для дальнейшего использования в xml data bindingю
т.е.
из
xsd
примерно такого содержания:
Код:

<xsd:element name="Op1Response" type="xsd:string" />

<xsd:element name="Op1Request" type="tns:OpType" />
<xsd:complexType name="OpType">
    <xsd:sequence>
        <xsd:element name="c1" type="xsd:string"/>
        <xsd:element name="c2" type="xsd:string"/>
    </xsd:sequence>
</xsd:complexType>

должен получиться файл actionscript 3 примерно такого содержания:
Код:

public class OpType {
       
        private String c1;
        private String c2;
       
        public String getC1() {
                return c1;
        }
       
        public void setC1(String val) {
                c1 = val;
        }
       
        public String getC2() {
                return c2;
        }
       
        public void setC2(String val) {
                c2 = val;
        }

}

процесс получения значений из xml - заключен в методах сгенереного класса и не показан :)

для чего нужно: http://www.codesynthesis.com/products/xsd/reasons.xhtml
аналог для c++: http://www.codesynthesis.com/products/xsd/

какие есть аналоги для actionscript 3?

BlooDHounD 04.12.2007 12:38

синтаксис с джавой не путаете? :)

screamge 04.12.2007 13:07

mxmlc компилер? :)

mip 04.12.2007 13:31

2 BlooDHounD:
ну я дернул просто из инета первый попавшийся пример, чтобы продемонстрировать наглядно так сказать :)
2 screamge:
а попадробнее?
я конечно склонялся к этому ответу -
но скажите - возможно ли там приделать элементы которые не входят в схему определенную для mxml
Как я понимаю mxml - это просто обычный xml который пользуется схемой определенной в adobe.
Мне же надо как раз приделать генерацию такой схемы в as,
для определения элементов которые не входят в схему mxml

mip 04.12.2007 14:07

вобщем поюзал чуток flex,
теперь уточню предыдущий вопрос:
можно ли и как сделать custom element базирующийся на моем классе,
не унаследованном от UIComponent?

BlooDHounD 04.12.2007 14:47

а может хелп ещё посмотреть?

mip 04.12.2007 15:15

мне более приятнее будет узнать ответ от вас , нежели от хелпа :)

BlooDHounD 04.12.2007 18:49

а мне приятнее, когда собеседник хоть как-то пытается учится, а не тупо ждёт пока ему бросят рыбку как дресерованному тюленю, но хорошее поведение.

mip 05.12.2007 10:09

итак мои эксперименты привели к такому результату
Код:

// ActionScript file x.as

package net{

import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class x
{
        public var ayyyy:int = 0;
}
}

mxml файл
Код:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="net.*" layout="absolute">
        <mx:constraintRows>
                <mx:ConstraintRow id="Application1_row1" height="25.8%"/>
                <mx:ConstraintRow id="Application1_row2" height="74.2%"/>
        </mx:constraintRows>
        <mx:ComboBox x="190" y="144"></mx:ComboBox>
       
        <x>
        <ayyyy>23</ayyyy>
        </x>
</mx:Application>

все нормально, осталось только два вопроса
1. (не очень важно) Как сделать чтобы мой компонент x - отображался на вкладке компоненты (в ветке custom component) ?
2. (критично) Как из actionscript взаиводействовать с mxml ?
Имеется ввиду описание как это должно работать, кто что вызывает, кто куда ссылается, кто кого запускает - хотябы вкратце

BlooDHounD 05.12.2007 10:26

в хелпе кстати почти на первой странице, написано, и даже очень подробно.


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

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