S2Adapter
予想通り、Flex純正AMFGatewayを使って、Seasar2と接続できました。
次に、WEB-INF/flex/gateway-config.xmlにAdapterの定義を足します。
package org.seasar.amf;
...
public class S2Adapter extends JavaAdapter {public Object invokeFunction(ActionContext ctx,
String name,
String methodName, List argList)
throws Throwable {S2Container container =
SingletonS2ContainerFactory.getContainer();
Object component = container.getComponent(name);
BeanDesc beanDesc = BeanDescFactory.getBeanDesc(
component.getClass());
return beanDesc.invoke(component, methodName,
argList.toArray());
}public boolean supportsService(ActionContext ctx,
String name,
String methodName, List argList, String arg4)
throws Exception {S2Container container =
SingletonS2ContainerFactory.getContainer();
return container.hasComponentDef(name);
}
}
<adapter type="stateless-class">org.seasar.amf.S2Adapter