Kevin,
I'm in the same boat. I had to initialize my VO object in the
constructor. So, in your getUserInfo(), you would do (using my VO):
var teamData:TeamVO = new TeamVO(data.result);
and in your VO:
public function TeamVO(toSet:Object=null) {
registerClassAlias("com.mikecrowe.all.vo.TeamVO", TeamVO);
_uuid = UIDUtil.createUID();
if ( toSet ) {
try { uuid = toSet.uuid; } catch ( e:Error ) {
trace("Error setting uuid: "+e); }
try { id = toSet.id; } catch ( e:Error ) { trace("Error
setting id: "+e); }
try { created_by = toSet.created_by; } catch ( e:Error )
{ trace("Error setting created_by: "+e); }
try { created_on = parseDate(toSet.created_on); } catch
( e:Error ) { trace("Error setting created_on: "+e); }
try { updated_by = toSet.updated_by; } catch ( e:Error )
{ trace("Error setting updated_by: "+e); }
try { updated_on = parseDate(toSet.updated_on); } catch
( e:Error ) { trace("Error setting updated_on: "+e); }
try { parent_id = toSet.parent_id; } catch ( e:Error ) {
trace("Error setting parent_id: "+e); }
try { contact_id = toSet.contact_id; } catch ( e:Error )
{ trace("Error setting contact_id: "+e); }
try { cat_id = toSet.cat_id; } catch ( e:Error ) {
trace("Error setting cat_id: "+e); }
try { team_is_global = toSet.team_is_global; } catch (
e:Error ) { trace("Error setting team_is_global: "+e); }
try { team_organizat_personal =
toSet.team_organizat_personal; } catch ( e:Error ) { trace("Error
setting team_organizat_personal: "+e); }
try { team_abbreviation = toSet.team_abbreviation; }
catch ( e:Error ) { trace("Error setting team_abbreviation: "+e); }
try { team_name = toSet.team_name; } catch ( e:Error ) {
trace("Error setting team_name: "+e); }
try { team_emails = toSet.team_emails; } catch ( e:Error
) { trace("Error setting team_emails: "+e); }
}
}
Note: The individual try{} statements are important. I had it around
all the assignments before, and it ends up not initializing.
Additionally, I'm working on a templating system that creates all the VO
objects, PHP objects, and a basic CRUD interface. It's crude now, but
working for me.
If you want to chat about it, IM me at mikecrowe (yahoo) or
mike(a)mikeandkellycrowe(d)com (msn).
Mike
--- In [email protected], Kevin <[EMAIL PROTECTED]> wrote:
>
> I am still having some problems using explicitType with PHP & Flex.
> I am trying to send a basic Object back from PHP to flex and have it
> map to a VO. I think I have it all set up correctly, but I continue
> to get an error:
>
> IN FLEX VO UserDataVO.as
>
> [RemoteClass("com.onefoot.dbocl.services.vo.users.UserDataVO")]
>
> IN PHP VO UserDataVO.php
> var $_explicitType = "com.onefoot.dbocl.services.vo.users.UserDataVO";
>
> SEND FROM PHP
> public function getUserInfo(){
> /* retrieve session variables from server
> */
> $User = new UserDataVO();
> $User->fullName = "Test User";
> $User->firstName = "Test";
> $User->lastName = "User";
>
> return $User;
> }
>
>
> RECEIVE IN FLEX from getUserInfo() call
> public function result(data:Object):void
> {
> var userData:UserDataVO = data.result;
> }
>
> ERROR
> Type Coercion failed: cannot convert mx.utils::[EMAIL PROTECTED]
> to com.onefoot.dbocl.vo.users.UserDataVO.
>
>
>
> Thanks for the help!
>
> - Kevin
>