在flex中,我有一个类'MapDrawingPoint',在我的一个mxml文件中,我创建了ArrayCollection并用MapDrawingPoint实例填充它。

var mapDrawingPoints : ArrayCollection = new ArrayCollection();
...
mapDrawingPoints.addItem(MapDrawingPoint);


然后,我使用对象列表对Java后端进行远程调用,在调试模式下,我可以看到我正在使用Java方法,但是预期的ArrayList作为输入是一个flex.messaging.io.ArrayCollection,其确切数量元素,但不是MapDrawingPoint类型,而是flex.messaging.io.amf.ASObject类型。

在Java类MapDrawingPoint上,我没有做任何特别的事情,只是确保在那里具有正确的属性。与我创建的AS类相同,它具有与Java类相同的属性,但是我添加了bindable-和remoteclass标签:

package model {
[Bindable]
[RemoteClass(alias="com.mycompany.model.MapDrawingPoint")]
public class MapDrawingPoint {
...


我正在使用BlazeDS在运行配置了Spring(以及spring-flex)的Tomcat的后端服务器上进行远程处理...

你们当中有人知道我在做什么错吗?

最佳答案

我想问题就在这里:

mapDrawingPoints.addItem(MapDrawingPoint);


在其中添加Class实例(本身是类)的地方,而不是MapDrawingPoint实例的地方。

关于java - Flex和Java之间的RemoteClass问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5937648/

10-10 12:47