Java TypeError:错误#1034:类型强制失败:无法将对象转换为数组

Java TypeError:错误#1034:类型强制失败:无法将对象转换为数组,java,actionscript-3,apache-flex,red5,coercion,Java,Actionscript 3,Apache Flex,Red5,Coercion,我在理解从Red5 Java服务器应用程序向AS3脚本发送对象、变量或其他信息时遇到问题 我面临的问题是,我用Java写下了以下代码: ((IServiceCapableConnection) conn).invoke("say", params); 它调用了我的ActionScript中的一个方法,该方法使用名为“params”的参数调用“say”。 到目前为止还不错 我的ActionScript看起来像: public function say(user:A

我在理解从Red5 Java服务器应用程序向AS3脚本发送对象、变量或其他信息时遇到问题

我面临的问题是,我用Java写下了以下代码:

        ((IServiceCapableConnection) conn).invoke("say", params);
它调用了我的ActionScript中的一个方法,该方法使用名为“params”的参数调用“say”。 到目前为止还不错

我的ActionScript看起来像:

        public function say(user:Array):void{
            var usr:Array = user  as UserVO;
            list.appendText(usr[0] + "\n");
        }
所以它得到了数组,但我不能使用它,因为它告诉我导致以下错误:

TypeError:错误#1034:类型强制失败:无法转换Object@123b4a7f1排列


有人能告诉我如何“转换”这个部分吗?我看过一些关于序列化的文章,但没有发现问题。

UserVO
Array
不兼容:

 var usr:Array = user  as UserVO;
你可以试试这个:

 var usr:UserVO = user[0] as UserVO;// or similar in a for loop
如果您验证以下内容,这将是一件好事:

Java

package abc;
public class UserVO implements Serializable { .. }
[Bindable]
    [RemoteClass(alias="abc.UserVO")]
    public class UserVO 
    { .. }
作为

package abc;
public class UserVO implements Serializable { .. }
[Bindable]
    [RemoteClass(alias="abc.UserVO")]
    public class UserVO 
    { .. }

Ty,hatsh,谢谢你的评论,但我仍然得到这个异常TypeError:Error#1034:Type强制失败:无法转换Object@10957eac1排列。我可以在for循环中对每个值进行转换吗?在哪一行出现此错误?您是否也可以发布您在
Java
调用中传递的
params
的内容..啊,sry忘记发布了。。。对象[]参数=新对象[]{user};User是一个值对象,它保存了我的所有用户属性。它的构建类似于:公共类UserVO{private int id;public int getId(){return id;}public void setId(int id){this.id=id;}}}编辑了我的注释,Java
UserVO
应该
实现Serializable
非常感谢,但我现在遇到了以下异常:TypeError:Error#1009:无法访问空对象引用的属性或方法。我现在会寻找这个,但是你帮了我很多。