zoukankan      html  css  js  c++  java
  • blazeDS开发

    还是以那个登录例子来说,登录请求在blazeDS来看不是直接发送URL串来请求,而是通过AS代码与web-info下的

    remoting-config.xml配合使用

    mxml中重要代码片段

    <span style="font-size: medium;"><fx:Declarations>
    <!-- 将非可视元素(例如服务、值对象)放在此处 -->
    &nbsp;<s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"&nbsp; /></fx:Declarations>
    </span>

     那么这个destination所指的名字就是remoting-config.xml中配置好的名称,具体内容是

    <span style="font-size: medium;"><?xml version="1.0" encoding="UTF-8"?>
    <service id="remoting-service" 
        class="flex.messaging.services.RemotingService">
        <adapters>
            <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
        </adapters>
    
        <default-channels>
            <channel ref="my-amf"/>
        </default-channels>
    
    <!--这个代码片段指定处理登录的具体类全限定名-->
        <destination id="mytest" >
         <properties>
            <source>com.imgold.test.Login</source>
         </properties>
         </destination>
    
    </service></span>

    xml代码

    <span style="font-size: medium;"><?xml version="1.0" encoding="UTF-8"?>
    <service id="remoting-service" 
        class="flex.messaging.services.RemotingService">
        <adapters>
            <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
        </adapters>
    
        <default-channels>
            <channel ref="my-amf"/>
        </default-channels>
    
    <!--这个代码片段指定处理登录的具体类全限定名-->
        <destination id="mytest" >
         <properties>
            <source>com.imgold.test.Login</source>
         </properties>
         </destination>
    
    </service></span>
    

    mxml中光有这个还不行,既然是登陆,肯定有点击发送及处理结果的方法

        下面来看下程序的点击登录按钮处理方法

    <span style="font-size: medium;">protected function loginBtn_clickHandler(event:MouseEvent):void
    {
    myFlex.getUser(userName.text,passWord.text);		
    }</span>
    

     这个getUser方法可是JAVA后台处理类程序中的具体方法

       上面remoteObject那个result方法是处理程序返回结果的

    <span style="font-size: medium;">protected function myFlex_resultHandler(event:ResultEvent):void
    {
    	str=event.result as String;
    	//Alert.show(str);
    	if(str=='success'){
    	currentState='mainState';
    	}else{
    	shake.play();   
    	}
    }</span>
    

    其他MXML代码上次发的那个登录示例中有

        最后就看下程序处理类的具体代码

    <span style="font-size: medium;">public class Login {
    
        public String getUser(String userName,String passWord){
        	ApplicationContext 
    		context = new ClassPathXmlApplicationContext("applicationContext.xml");
    
    
    		UserServiceImpl sf = (UserServiceImpl) context.getBean("userService");
    		User user=sf.login(userName, passWord);
    		System.out.println(user);
    		if(user!=null){
    			return "success";
    		}else{
    			return "fail";
    		}
        }
    
    		
    }</span>
    

    大功告成,blazeDS最基本的示例可以运行了

      

      

      

      

  • 相关阅读:
    神经网络——BP算法
    汉诺塔
    Clucene系列3--Clucene的代码组织结构
    Clucene系列2--Clucene专业术语
    j
    TF-IDF的定义及计算
    Python编程 从入门到实践 练习5-10 检查用户名
    判断输入的正整数是否为素数
    百钱百鸡问题
    打印由 * 号组成的菱形
  • 原文地址:https://www.cnblogs.com/regalys168/p/3626882.html
Copyright © 2011-2022 走看看