Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-30 Thread Martin Wood

Just knowing that
the object is populated before the constructor is called and that those
properties take precedence over my class explains a lot.  Now I'm much
better prepared to handle what remoting throws at me :)


great...

I think thats one part of remoting where they could have done something slightly 
more clever. Even if they added some configuration possibilities to the player 
like a flag for


Remoting.callConstructorFirst

and

Remoting.useAccessors

which could use both types of accessor but I prefer to have options.
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-30 Thread Martin Wood

Just knowing that
the object is populated before the constructor is called and that those
properties take precedence over my class explains a lot.  Now I'm much
better prepared to handle what remoting throws at me :)


Accidentally hit the wrong key combo and sent the previous mail before i was 
finishedhere it is again..in all its glory..


great...

I think thats one part of remoting where they could have done something slightly
more clever. Even if they added some configuration possibilities to the player
like a flag for Remoting.callConstructorFirst if you want you objects created in 
a 'normal' way, maybe at the expense of performance and Remoting.useAccessors 
which could use both types of accessor. (get x and getX)


They could be set to default to what they are now, but at least you would have 
options to turn the remoting deserialization (and local shared objects) into 
something that behaves like normal code rather than magic. :)



martin.
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-30 Thread Julius Turnmire
I couldn't agree more :)  We can always hope for such improvements in
the near future.  

On Wed, 2006-08-30 at 11:18 +0200, Martin Wood wrote:
  Just knowing that
  the object is populated before the constructor is called and that those
  properties take precedence over my class explains a lot.  Now I'm much
  better prepared to handle what remoting throws at me :)
 
 Accidentally hit the wrong key combo and sent the previous mail before i was 
 finishedhere it is again..in all its glory..
 
 great...
 
 I think thats one part of remoting where they could have done something 
 slightly
 more clever. Even if they added some configuration possibilities to the player
 like a flag for Remoting.callConstructorFirst if you want you objects created 
 in 
 a 'normal' way, maybe at the expense of performance and Remoting.useAccessors 
 which could use both types of accessor. (get x and getX)
 
 They could be set to default to what they are now, but at least you would 
 have 
 options to turn the remoting deserialization (and local shared objects) into 
 something that behaves like normal code rather than magic. :)
 
 
 martin.
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com
 http://training.figleaf.com
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


[Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Julius Turnmire
Ok, I've got it working as advertised.  I'm using VO's and my returned
values are being mapped to my VO classes.  But the problem is how
they're mapped.

I decided to work on getting VO's to work in my project in the hopes
that all the string values I get from MySQL would be mapped to their
proper datatypes.  But it didn't quite work the way I had hoped. The
returned values do not get put into the VO class as the datatypes that
are assigned in the class, they get put in as the datatypes that are
returned from PHP.

For instance..

PHP service class:

?php

class SimpleService
{

function SimpleService()
{
$this-methodTable = array(
tester = array(
description = tester() :: returns examples,
arguments = array(),
access = remote,
returns = TesterVO
)
 );
}

function tester()
{
$TesterVO = array('aString' = 12345, 'aNumber' = '12345');
return $TesterVO;
}
}

?


Flash VO class:

class TesterVO
{

aString:String;
aNumber:Number;

function TesterVO()
{
}

}

In this example aString doesn't get mapped to a String, and aNumber
doesn't get mapped to a Number.  aString becomes a Number and aNumber
becomes a string.  Well, I wouldn't normally return types like this, but
I was really hoping to avoid converting strings to numbers, and also the
1 string that you get when MySql returns a TRUE.

So, I figure that it's all ok..  I'll use getters/setters.  So I set up
those methods in my class, for instance:

...
__aNumber:Number;

function set aNumber(newNum):Void
{
__aNumber = parseInt(newNum);  //ie  parseInt(12345);
}

function get aNumber():Number
{
return __aNumber;
}
...


Guess what happens... my setter basically gets overwritten with
aNumber:String = 12345..  And my getter returns undefined because the
setter never set __aNumber!  I was under the assumption that the whole
purpose of VO's was so that datatypes get typed properly..  But the way
Flash works, it just overwrites the properties with what's returned.

Now I know I can work around all this, but doesn't it really defeat the
purpose of all of it all?  Aren't Value Object's properties supposed to
use the datatypes that they define?  Am I missing something?  All does
work fine when the returning types correspond.  When array('aNumber' =
123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do
get those datatypes.  There's no need to even set the datatypes as it
really wont matter when flash gets a hold of it.

Another thing, but it's minor, is that in this case:

function onResult(myResult:ResultEvent)
{
var theResult:TesterVO = myResult.result;
}

Flash will error on compile.  It really thinks that myResult.result will
be of the datatype Object.  Shouldn't they have left that untyped?

Now before you think that my VO's really aren't getting mapped, they
are.  I've made sure of that, any methods I put in that class are
accessible upon receiving data from the server..

Any thoughts?  Am I missing something?  I've been very happy with
remoting, and have been using it with great success for some time now.
But, I was really hoping that spending the time to get VO's working
would be worth it.  Boy was I disappointed.  It just seems to be more
work then what it's worth.


___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread eka

Hello :)

do you use Object.registerClass method to register your VO  classes in
ActionScript ?

You can read in french my article about Class Mapping (AS2 and AS3) and
fixing bug in AS3 in my blog :

http://www.ekameleon.net/blog/index.php?2006/08/28/48--amf-class-mapping-difficile-en-as3

Sorry, the article is write in French ! but the ActionScript and PHP codes
are easy ;)

EKA+ :)



You can use Google translator or babelFish

2006/8/28, Julius Turnmire [EMAIL PROTECTED]:


Ok, I've got it working as advertised.  I'm using VO's and my returned
values are being mapped to my VO classes.  But the problem is how
they're mapped.

I decided to work on getting VO's to work in my project in the hopes
that all the string values I get from MySQL would be mapped to their
proper datatypes.  But it didn't quite work the way I had hoped. The
returned values do not get put into the VO class as the datatypes that
are assigned in the class, they get put in as the datatypes that are
returned from PHP.

For instance..

PHP service class:

?php

class SimpleService
{

function SimpleService()
{
$this-methodTable = array(
tester = array(
description = tester() :: returns examples,
arguments = array(),
access = remote,
returns = TesterVO
)
 );
}

function tester()
{
$TesterVO = array('aString' = 12345, 'aNumber' = '12345');
return $TesterVO;
}
}

?


Flash VO class:

class TesterVO
{

aString:String;
aNumber:Number;

function TesterVO()
{
}

}

In this example aString doesn't get mapped to a String, and aNumber
doesn't get mapped to a Number.  aString becomes a Number and aNumber
becomes a string.  Well, I wouldn't normally return types like this, but
I was really hoping to avoid converting strings to numbers, and also the
1 string that you get when MySql returns a TRUE.

So, I figure that it's all ok..  I'll use getters/setters.  So I set up
those methods in my class, for instance:

...
__aNumber:Number;

function set aNumber(newNum):Void
{
__aNumber = parseInt(newNum);  //ie  parseInt(12345);
}

function get aNumber():Number
{
return __aNumber;
}
...


Guess what happens... my setter basically gets overwritten with
aNumber:String = 12345..  And my getter returns undefined because the
setter never set __aNumber!  I was under the assumption that the whole
purpose of VO's was so that datatypes get typed properly..  But the way
Flash works, it just overwrites the properties with what's returned.

Now I know I can work around all this, but doesn't it really defeat the
purpose of all of it all?  Aren't Value Object's properties supposed to
use the datatypes that they define?  Am I missing something?  All does
work fine when the returning types correspond.  When array('aNumber' =
123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do
get those datatypes.  There's no need to even set the datatypes as it
really wont matter when flash gets a hold of it.

Another thing, but it's minor, is that in this case:

function onResult(myResult:ResultEvent)
{
var theResult:TesterVO = myResult.result;
}

Flash will error on compile.  It really thinks that myResult.result will
be of the datatype Object.  Shouldn't they have left that untyped?

Now before you think that my VO's really aren't getting mapped, they
are.  I've made sure of that, any methods I put in that class are
accessible upon receiving data from the server..

Any thoughts?  Am I missing something?  I've been very happy with
remoting, and have been using it with great success for some time now.
But, I was really hoping that spending the time to get VO's working
would be worth it.  Boy was I disappointed.  It just seems to be more
work then what it's worth.


___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Martin Wood
Unfortunately the player wont do data type conversion when deserializing the 
contents of an object returned via remoting.


You have to make sure your types are right on the server so that when the 
remoting gateway constructs the amf data to send to flash it has the correct 
types already inside.


Obviously this is more of a pain from something like PHP than say Java as PHP 
has a much looser type system.


For me the beauty of remoting is that you *do* get the datatypes that you create 
on the server sent to you in flash.


I think the other issue you are running into is that when the player creates the 
actionscript objects from the remoting data it populates the object *before* it 
runs the constructor.


This means that it doesnt care about any getters / setters and you have to be 
extra careful if you do anything in the constructor or are expecting parameters 
to your constructor.



Julius Turnmire wrote:

Ok, I've got it working as advertised.  I'm using VO's and my returned
values are being mapped to my VO classes.  But the problem is how
they're mapped.

___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Julius Turnmire
Yup, I do do registerClass.  Wouldn't work without ;)  I'll check out
your article, but as far as I can tell everything is working it's just
overwritting the variables in my class..

On Tue, 2006-08-29 at 18:07 +0200, eka wrote:
 Hello :)
 
 do you use Object.registerClass method to register your VO  classes in
 ActionScript ?
 
 You can read in french my article about Class Mapping (AS2 and AS3) and
 fixing bug in AS3 in my blog :
 
 http://www.ekameleon.net/blog/index.php?2006/08/28/48--amf-class-mapping-difficile-en-as3
 
 Sorry, the article is write in French ! but the ActionScript and PHP codes
 are easy ;)
 
 EKA+ :)
 
 
 
 You can use Google translator or babelFish
 
 2006/8/28, Julius Turnmire [EMAIL PROTECTED]:
 
  Ok, I've got it working as advertised.  I'm using VO's and my returned
  values are being mapped to my VO classes.  But the problem is how
  they're mapped.
 
  I decided to work on getting VO's to work in my project in the hopes
  that all the string values I get from MySQL would be mapped to their
  proper datatypes.  But it didn't quite work the way I had hoped. The
  returned values do not get put into the VO class as the datatypes that
  are assigned in the class, they get put in as the datatypes that are
  returned from PHP.
 
  For instance..
 
  PHP service class:
 
  ?php
 
  class SimpleService
  {
 
  function SimpleService()
  {
  $this-methodTable = array(
  tester = array(
  description = tester() :: returns examples,
  arguments = array(),
  access = remote,
  returns = TesterVO
  )
   );
  }
 
  function tester()
  {
  $TesterVO = array('aString' = 12345, 'aNumber' = '12345');
  return $TesterVO;
  }
  }
 
  ?
 
 
  Flash VO class:
 
  class TesterVO
  {
 
  aString:String;
  aNumber:Number;
 
  function TesterVO()
  {
  }
 
  }
 
  In this example aString doesn't get mapped to a String, and aNumber
  doesn't get mapped to a Number.  aString becomes a Number and aNumber
  becomes a string.  Well, I wouldn't normally return types like this, but
  I was really hoping to avoid converting strings to numbers, and also the
  1 string that you get when MySql returns a TRUE.
 
  So, I figure that it's all ok..  I'll use getters/setters.  So I set up
  those methods in my class, for instance:
 
  ...
  __aNumber:Number;
 
  function set aNumber(newNum):Void
  {
  __aNumber = parseInt(newNum);  //ie  parseInt(12345);
  }
 
  function get aNumber():Number
  {
  return __aNumber;
  }
  ...
 
 
  Guess what happens... my setter basically gets overwritten with
  aNumber:String = 12345..  And my getter returns undefined because the
  setter never set __aNumber!  I was under the assumption that the whole
  purpose of VO's was so that datatypes get typed properly..  But the way
  Flash works, it just overwrites the properties with what's returned.
 
  Now I know I can work around all this, but doesn't it really defeat the
  purpose of all of it all?  Aren't Value Object's properties supposed to
  use the datatypes that they define?  Am I missing something?  All does
  work fine when the returning types correspond.  When array('aNumber' =
  123, 'aString' = 123JustaString, 'aBoolean' = true) is returned I do
  get those datatypes.  There's no need to even set the datatypes as it
  really wont matter when flash gets a hold of it.
 
  Another thing, but it's minor, is that in this case:
 
  function onResult(myResult:ResultEvent)
  {
  var theResult:TesterVO = myResult.result;
  }
 
  Flash will error on compile.  It really thinks that myResult.result will
  be of the datatype Object.  Shouldn't they have left that untyped?
 
  Now before you think that my VO's really aren't getting mapped, they
  are.  I've made sure of that, any methods I put in that class are
  accessible upon receiving data from the server..
 
  Any thoughts?  Am I missing something?  I've been very happy with
  remoting, and have been using it with great success for some time now.
  But, I was really hoping that spending the time to get VO's working
  would be worth it.  Boy was I disappointed.  It just seems to be more
  work then what it's worth.
 
 
  ___
  Flashcoders@chattyfig.figleaf.com
  To change your subscription options or search the archive:
  http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
  Brought to you by Fig Leaf Software
  Premier Authorized Adobe Consulting and Training
  http://www.figleaf.com
  http://training.figleaf.com
 
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com

Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Julius Turnmire
On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote:
 Unfortunately the player wont do data type conversion when deserializing the 
 contents of an object returned via remoting.
Bummer :(

 
 You have to make sure your types are right on the server so that when the 
 remoting gateway constructs the amf data to send to flash it has the correct 
 types already inside.
 
Yes, when they are correct on the server first, they do come in
properly.

 Obviously this is more of a pain from something like PHP than say Java as PHP 
 has a much looser type system.
 
nods in agreement  

 For me the beauty of remoting is that you *do* get the datatypes that you 
 create 
 on the server sent to you in flash.
 
Yes, I have had much success with remoting.  But I have some old code
that I'm working with that leaves a lot of things in strings.  I was
hoping that VO's and class mapping might help here, but apparently not.


 I think the other issue you are running into is that when the player creates 
 the 
 actionscript objects from the remoting data it populates the object *before* 
 it 
 runs the constructor.
That is very good to know, I'll have to look into it more.  I also had a
brief look at eka's article and I'll need to do some more looking into
this.

 
 This means that it doesnt care about any getters / setters and you have to be 
 extra careful if you do anything in the constructor or are expecting 
 parameters 
 to your constructor.
Yes again, I'll need to experiment to see exactly what's happening. If
it is populating the object before the constructor is run, then perhaps
I can use the constructor to do the type conversion if I do decide to do
the conversion in Flash and not on the server.

Thank you very much for your insight!
 


 
 
 Julius Turnmire wrote:
  Ok, I've got it working as advertised.  I'm using VO's and my returned
  values are being mapped to my VO classes.  But the problem is how
  they're mapped.
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com
 http://training.figleaf.com
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread eka

Hello :)

class mapping it's very cool ... but i prefere use EDEN
serialisation/deseiialization :)

More information : http://live.burrrn.com/wiki/eden

you can use this tool in Javascript, AS1, AS2, AS3, ASP, .NET etc... and if
you can't use remoting you can continue to keep your datas in .txt or other
db files.

You can find Eden sources in the buRRRn repository located here
svn://live.buRRRn.com (port 3690) with your SVN client :)

I use AMFPhp and EDEN in my works with Flex, Flash and FMS.


EKA+ :)


2006/8/30, Julius Turnmire [EMAIL PROTECTED]:


On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote:
 Unfortunately the player wont do data type conversion when deserializing
the
 contents of an object returned via remoting.
Bummer :(


 You have to make sure your types are right on the server so that when
the
 remoting gateway constructs the amf data to send to flash it has the
correct
 types already inside.

Yes, when they are correct on the server first, they do come in
properly.

 Obviously this is more of a pain from something like PHP than say Java
as PHP
 has a much looser type system.

nods in agreement

 For me the beauty of remoting is that you *do* get the datatypes that
you create
 on the server sent to you in flash.

Yes, I have had much success with remoting.  But I have some old code
that I'm working with that leaves a lot of things in strings.  I was
hoping that VO's and class mapping might help here, but apparently not.


 I think the other issue you are running into is that when the player
creates the
 actionscript objects from the remoting data it populates the object
*before* it
 runs the constructor.
That is very good to know, I'll have to look into it more.  I also had a
brief look at eka's article and I'll need to do some more looking into
this.


 This means that it doesnt care about any getters / setters and you have
to be
 extra careful if you do anything in the constructor or are expecting
parameters
 to your constructor.
Yes again, I'll need to experiment to see exactly what's happening. If
it is populating the object before the constructor is run, then perhaps
I can use the constructor to do the type conversion if I do decide to do
the conversion in Flash and not on the server.

Thank you very much for your insight!





 Julius Turnmire wrote:
  Ok, I've got it working as advertised.  I'm using VO's and my returned
  values are being mapped to my VO classes.  But the problem is how
  they're mapped.
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com
 http://training.figleaf.com
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Julius Turnmire
Yes!  That's exactly what's happening!  So now I can do this in my VO
class:

class ExampleVO
{
result:Object; // datatype will depend on what server returns!

aString:String;
aNumber:Number;

function ExampleVO()
{
processResult();
}

private function processResult()
{
aString = String(result.aString);
aNumber = parseInt(result.aNumber);
}
}

Or something along these lines if I choose to do datatype conversion in
Flash.  Most of what I do is preprocessed into an object in php, and
with this pattern I can use my old code and the objects it returns and
deal with them in Flash instead of spending much time with it on the
server.  Although it would be best to just make it right on the server
in the first place. Again, thanks for this insight!  Just knowing that
the object is populated before the constructor is called and that those
properties take precedence over my class explains a lot.  Now I'm much
better prepared to handle what remoting throws at me :)


On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote:
 Unfortunately the player wont do data type conversion when deserializing the 
 contents of an object returned via remoting.
 
 You have to make sure your types are right on the server so that when the 
 remoting gateway constructs the amf data to send to flash it has the correct 
 types already inside.
 
 Obviously this is more of a pain from something like PHP than say Java as PHP 
 has a much looser type system.
 
 For me the beauty of remoting is that you *do* get the datatypes that you 
 create 
 on the server sent to you in flash.
 
 I think the other issue you are running into is that when the player creates 
 the 
 actionscript objects from the remoting data it populates the object *before* 
 it 
 runs the constructor.
 
 This means that it doesnt care about any getters / setters and you have to be 
 extra careful if you do anything in the constructor or are expecting 
 parameters 
 to your constructor.
 
 
 Julius Turnmire wrote:
  Ok, I've got it working as advertised.  I'm using VO's and my returned
  values are being mapped to my VO classes.  But the problem is how
  they're mapped.
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com
 http://training.figleaf.com
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


Re: [Flashcoders] AMFPHP 1.2 Class Mapping VO's incomming from PHP5 - It works but...

2006-08-29 Thread Julius Turnmire
Very interesting!  Thanks :)  

On Wed, 2006-08-30 at 01:12 +0200, eka wrote:
 Hello :)
 
 class mapping it's very cool ... but i prefere use EDEN
 serialisation/deseiialization :)
 
 More information : http://live.burrrn.com/wiki/eden
 
 you can use this tool in Javascript, AS1, AS2, AS3, ASP, .NET etc... and if
 you can't use remoting you can continue to keep your datas in .txt or other
 db files.
 
 You can find Eden sources in the buRRRn repository located here
 svn://live.buRRRn.com (port 3690) with your SVN client :)
 
 I use AMFPhp and EDEN in my works with Flex, Flash and FMS.
 
 
 EKA+ :)
 
 
 2006/8/30, Julius Turnmire [EMAIL PROTECTED]:
 
  On Tue, 2006-08-29 at 18:17 +0200, Martin Wood wrote:
   Unfortunately the player wont do data type conversion when deserializing
  the
   contents of an object returned via remoting.
  Bummer :(
 
  
   You have to make sure your types are right on the server so that when
  the
   remoting gateway constructs the amf data to send to flash it has the
  correct
   types already inside.
  
  Yes, when they are correct on the server first, they do come in
  properly.
 
   Obviously this is more of a pain from something like PHP than say Java
  as PHP
   has a much looser type system.
  
  nods in agreement
 
   For me the beauty of remoting is that you *do* get the datatypes that
  you create
   on the server sent to you in flash.
  
  Yes, I have had much success with remoting.  But I have some old code
  that I'm working with that leaves a lot of things in strings.  I was
  hoping that VO's and class mapping might help here, but apparently not.
 
 
   I think the other issue you are running into is that when the player
  creates the
   actionscript objects from the remoting data it populates the object
  *before* it
   runs the constructor.
  That is very good to know, I'll have to look into it more.  I also had a
  brief look at eka's article and I'll need to do some more looking into
  this.
 
  
   This means that it doesnt care about any getters / setters and you have
  to be
   extra careful if you do anything in the constructor or are expecting
  parameters
   to your constructor.
  Yes again, I'll need to experiment to see exactly what's happening. If
  it is populating the object before the constructor is run, then perhaps
  I can use the constructor to do the type conversion if I do decide to do
  the conversion in Flash and not on the server.
 
  Thank you very much for your insight!
 
 
 
  
  
   Julius Turnmire wrote:
Ok, I've got it working as advertised.  I'm using VO's and my returned
values are being mapped to my VO classes.  But the problem is how
they're mapped.
   ___
   Flashcoders@chattyfig.figleaf.com
   To change your subscription options or search the archive:
   http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
  
   Brought to you by Fig Leaf Software
   Premier Authorized Adobe Consulting and Training
   http://www.figleaf.com
   http://training.figleaf.com
  ___
  Flashcoders@chattyfig.figleaf.com
  To change your subscription options or search the archive:
  http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
  Brought to you by Fig Leaf Software
  Premier Authorized Adobe Consulting and Training
  http://www.figleaf.com
  http://training.figleaf.com
 
 ___
 Flashcoders@chattyfig.figleaf.com
 To change your subscription options or search the archive:
 http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
 
 Brought to you by Fig Leaf Software
 Premier Authorized Adobe Consulting and Training
 http://www.figleaf.com
 http://training.figleaf.com
___
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com