all groups > macromedia flash flash remoting > november 2003 >
You're in the

macromedia flash flash remoting

group:

Getting java objects to flash


Getting java objects to flash Cozmic
11/30/2003 12:03:34 PM
macromedia flash flash remoting:
Hello all,

I have been going nuts trying to get a java object over to Flash. I have tried using ASTranslator with no luck (Always get a NullPointerException)

Ok here is the case:
I'm using JBoss(with Tomcat) and I have a service Java object that looks like this:

package com.server;

public class Service
{
public Player getPlayer()
{
Player aPlayer = new Player();
aPlayer.setName("Tom");
return aPlayer;
}
}

And a simple player object:

package com.server;
import java.io.Serializable;

public class Player implements Serializable
{
private String name;

public String getName()
{
return name;
}

public void setName(String name)
{
this.name = name;
}
}

Then at the Flash Client a have the following script:


#include "NetServices.as"

NetServices.setDefaultGatewayUrl("http://localhost:8080/XRF/gateway");
var gatewayConnection = NetServices.createGatewayConnection();
var service = gatewayConnection.getService("com.server.Service", this);

// Define Player
Player = function() {}

// Define Player methods
Player.prototype.getName = function()
{
return name;
}

// Register Player object to map to com.server.Player Java object
Object.registerClass("com.server.Player", Player);

// Get Player from Flash Remoting
service.getPlayer();

// Handle Flash Remoting result
getPlayer_Result(player)
{
var testing = player.getName();
// player is an ActionScript object of type Player
trace(testing);
}
stop();

No matter what I do I cannot access any properties of the resulting object when I call service.getPlayer(). What am I doing wrong?

This is what I get in the flash output window:

undefined
NetServices info 1: getPlayer_Result was received from server: [object Object]


I have tried sending a String over to flash, and that works fine.


Re: Getting java objects to flash renee
12/4/2003 1:30:08 AM
have you tried maybe tracing with a for (each) loop ... just to see what kind of "object" you got back?

for (each in player) {
trace (each + " = " + player[each);
}

in the past sometimes I have found that helpful.
let me know what your output is, and maybe I could help you further.


(note: I am also using Flash remoting with Java)

Renee

AddThis Social Bookmark Button