`
yingfang05
  • 浏览: 119694 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

BlazeDS 与Spring集成指南之二

阅读更多
修改applicationContext.xml,增加BlazeDS与Spring集成配置,将Spring的bean导出为flex的Destination
共有三种方法可以将Spring的bean导出为felx的Destination

创建WEB-INF/applicationContext.xml,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:flex="http://www.springframework.org/schema/flex" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/flex
http://www.springframework.org/schema/flex/spring-flex-1.0.xsd">

    <!– Maps request paths at /messagebroker to the BlazeDS MessageBroker –>
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="mappings">
            <value>
                /messagebroker/*=_messageBroker
            </value>
        </property>
    </bean>

    <!– Dispatches requests mapped to a MessageBroker –>
    <bean class="org.springframework.flex.servlet.MessageBrokerHandlerAdapter"/>

    <!– Bootstraps and exposes the BlazeDS MessageBroker –>
    <bean id="_messageBroker " class="org.springframework.flex.core.MessageBrokerFactoryBean" />  

    <!– Expose the productService bean for BlazeDS remoting –>
    <!– method 1 –>
    <!–
      <bean id="test1" class="com.yeeach.HelloWorldService" />
      <flex:remoting-destination ref="test1" />
      –>
      <!– method2 –>
      <!–
      <bean id="test1" class="com.yeeach.HelloWorldService" >
          <flex:remoting-destination />
      </bean>
       –>
      <!– method3 –>
      <bean id="helloWorldService" class="com.yeeach.HelloWorldService" />
      <bean id="test1" class="org.springframework.flex.remoting.RemotingDestinationExporter">
          <property name="messageBroker" ref="mySpringManagedMessageBroker"/>
        <property name="service" ref="helloWorldService"/>
      </bean>
</beans>

7、创建flex-src/helloworld.mxml,内容如下
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                layout="vertical">
    <mx:RemoteObject destination="test1"
                     id="test1">
        <mx:method name="hello"
                   result="sayHelloResult(event)"/>
        <mx:method name="world"
                   result="sayWorldResult(event)"/>
    </mx:RemoteObject>
    <mx:HBox>
        <mx:Label text="输入:"/>
        <mx:TextInput id="inputStr"/>
        <mx:Button label="say hello"
                   click="sayHello(event);"/>
        <mx:Button label="say world"
                   click="sayWorld(event);"/>
    </mx:HBox>
    <mx:HBox>
        <mx:Label text="结果:"/>
        <mx:TextArea id="result"/>
    </mx:HBox>

    <mx:Script>

        <![CDATA[
            import mx.rpc.events.FaultEvent;
            import mx.controls.Alert;
            import mx.rpc.events.ResultEvent;

            function sayHello(event:Event):void
            {
                var inputVar:String=inputStr.text;
                test1.hello(inputVar);

            }

            function sayWorld(event:Event):void
            {
                var inputVar:String=inputStr.text;
                test1.world(inputVar);

            }

            private function sayHelloResult(event:ResultEvent):void
            {
                result.text=event.result.toString();
                Alert.show(event.result.toString(), "返回结果");
            }

            private function sayWorldResult(event:ResultEvent):void
            {
                result.text=event.result.toString();
                Alert.show(event.result.toString(), "返回结果");
            }
        ]]>
    </mx:Script>
</mx:Application>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics