Java red5 v0.9:从org.red5.io.utils.ObjectMap转换为类
我使用的是red5 v0.9最新的svn版本 函数Java red5 v0.9:从org.red5.io.utils.ObjectMap转换为类,java,red5,Java,Red5,我使用的是red5 v0.9最新的svn版本 函数appConnect(Iconnection conn,Object[]params) 提供ObjectMap类型的数组 我想将params[0]转换为我创建的ConnectParams类: public class ConnectParams extends Object { public Double toolkitVersion; public String gameName; public Integer use
appConnect(Iconnection conn,Object[]params)
提供ObjectMap类型的数组
我想将params[0]转换为我创建的ConnectParams类:
public class ConnectParams extends Object {
public Double toolkitVersion;
public String gameName;
public Integer userId;
public Integer challengeId;
}
当我尝试使用以下命令转换时:
ConnectParams param=(ConnectParams)params[0]
我得到以下错误:
java.lang.ClassCastException: org.red5.io.utils.ObjectMap cannot be cast to com.xpogames.ConnectParams
在Flash端,我对同一个类有相同的定义,我将它作为一个参数发送
在red5 java端,如果我打印params[0].toString(),我会看到我发送的ConnectParams类中的所有键和值,这意味着我唯一缺少的是如何将这个ObjectMap转换为适当的类类型。我通过将params[0]强制转换为hashmap并将其传递给我的类的构造函数解决了这个问题, 在该类中,我使用.get()和.containsKey()来填充我的类:
ConnectParams param = new ConnectParams((HashMap<String,Object>)params[0]);
ConnectParams param=新的ConnectParams((HashMap)params[0]);