首先下载FlashBuilder_4_7_LS10_win64.exe试了几eclipse安装没有成功插头,含有myeclipse8.5、spring sts2.9.2、eclipse3.5、j2eeeclipse版本号4.2.0,后来搞了一个FlashBuilder_4_LS10.exe安装完找不到插件安装文件原来这个是单独版,必须插件版才行,最后下载FlashBuilder_4_Plugin_LS10.exe最终配置成功了。myeclipse8.5不行,spring sts能够了。

spring sts部署应用跟myeclipse不一样,比較类似eclipse。

用sts整合flex和java有几个步骤:

1:新建动态webprojectflexweb,创建web.xml

2:blazeds-turnkey-4.0.0.14931.zip解压,复制blazed两个目录flex和lib到WEB-INF下。里面是blaze的jar包和flex配置文件,然后改动web.xml增加blaze支持

<listener><listener-class>flex.messaging.HttpFlexSession</listener-class></listener><!-- MessageBroker Servlet --><servlet><servlet-name>MessageBrokerServlet</servlet-name><servlet-class>flex.messaging.MessageBrokerServlet</servlet-class><init-param><param-name>services.configuration.file</param-name><param-value>/WEB-INF/flex/services-config.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>MessageBrokerServlet</servlet-name><url-pattern>/messagebroker/*</url-pattern></servlet-mapping>

3:项目右键。加入/更改项目类型>加入flex类型项目,第一步,应用程序类型选择J2EE。下方选择BlazeDS。第二部根目录填入项目在workspase的路径加一个WebContent。如E:\workspaces\sts\flexweb\WebContent,根URL填http://localhost:8080/flexweb。上下文根目录/flexweb,输出目录使用默认E:\workspaces\sts\flexweb\WebContent\flexweb-debug,点击finish

4:转换完毕后,文件夹有些变化,右键项目>properties>flex构建路径,主源文件夹改为flex_src,然后把自己主动生成的src文件夹下的flexweb.mxml移动到flex_src下,环境搭建就算完毕了

HelloWorld

flexweb.mxml:

<?

xml version="1.0" encoding="utf-8"?

> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import mx.controls.Alert; import mx.rpc.events.ResultEvent; protected function myFlex_resultHandler(event:ResultEvent):void{ var name:String=event.result as String; Alert.show(name); } protected function button1_clickHandler(event:MouseEvent):void { myFlex.sayHello(txtName.text); } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(比如服务、值对象)放在此处 --> <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"/> </fx:Declarations> <s:Button x="209" y="135" label="按钮" click="button1_clickHandler(event)"/> <s:TextInput x="166" y="81" id="txtName"/> <s:Label x="10" y="81" text="请输入内容:" fontSize="15" fontWeight="bold" fontFamily="中易黑体"/> </s:Application>

当中

<s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"/>

指定了一个调用Java的类Hello,mytest相应到remoting-config.xml

在WEB-INFO/flex文件夹下remoting-config.xml增加

<destination id="mytest"><properties><source>com.hongbo.Hello</source></properties></destination>

result相应的是java方法调用的回调函数

建一个普通java类

package com.hongbo;public class Hello {public String sayHello(String name){System.out.println("------------------------------------");return "Hello First Demo " + name;}
}

这样就OK了

訪问路径是http://localhost:8080/flexweb/flexweb-debug/flexweb.html

第一次会报404,problems提示无法创建html包装器,右键点击又一次创建模板

加入Spring支持

1:web.xml增加

<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/classes/applicationContext.xml </param-value></context-param><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>

2:src下创建applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"><bean id="hello" class="com.hongbo.Hello"><property name="testSpring"><ref bean="testSpring"/></property></bean><bean id="testSpring" class="com.hongbo.test.impl.TestSpringImpl"/>
</beans>

3:WEB-INF/flex/service-config.xml增加

<factories><factory id="spring" class="com.hongbo.SpringFactory" />  </factories>

加入java类

package com.hongbo;import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.ApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
import flex.messaging.FactoryInstance;
import flex.messaging.FlexFactory;
import flex.messaging.config.ConfigMap;
import flex.messaging.services.ServiceException;
public class SpringFactory implements FlexFactory {private static final String SOURCE = "source";public void initialize(String id, ConfigMap configMap) {}public FactoryInstance createFactoryInstance(String id, ConfigMap properties) {SpringFactoryInstance instance = new SpringFactoryInstance(this, id,properties);instance.setSource(properties.getPropertyAsString(SOURCE, instance.getId()));return instance;} // end method createFactoryInstance()    public Object lookup(FactoryInstance inst) {SpringFactoryInstance factoryInstance = (SpringFactoryInstance) inst;return factoryInstance.lookup();}static class SpringFactoryInstance extends FactoryInstance {SpringFactoryInstance(SpringFactory factory, String id,ConfigMap properties) {super(factory, id, properties);}public String toString() {return "SpringFactory instance for id=" + getId() + " source="+ getSource() + " scope=" + getScope();}public Object lookup() {ApplicationContext appContext = WebApplicationContextUtils.getWebApplicationContext(flex.messaging.FlexContext.getServletConfig().getServletContext());String beanName = getSource();try {return appContext.getBean(beanName);} catch (NoSuchBeanDefinitionException nexc) {ServiceException e = new ServiceException();String msg = "Spring service named '" + beanName+ "' does not exist.";e.setMessage(msg);e.setRootCause(nexc);e.setDetails(msg);e.setCode("Server.Processing");throw e;} catch (BeansException bexc) {ServiceException e = new ServiceException();String msg = "Unable to create Spring service named '"+ beanName + "' ";e.setMessage(msg);e.setRootCause(bexc);e.setDetails(msg);e.setCode("Server.Processing");throw e;}}}}

4:改动remoting-config.xml

<destination id="mytest"><properties><factory>spring</factory><source>hello</source></properties></destination>

5:改动对应的Java类

package com.hongbo;import com.hongbo.test.TestSpring;public class Hello {private TestSpring testSpring;public void setTestSpring(TestSpring testSpring) {this.testSpring = testSpring;}public String sayHello(String name){return testSpring.testSpring(name);}
}
package com.hongbo.test;public interface TestSpring {String testSpring(String name);
}
package com.hongbo.test.impl;import com.hongbo.test.TestSpring;public class TestSpringImpl implements TestSpring{public String testSpring(String name){System.out.println("test spring-------------------------------------"+name);return "test spring "+name;}
}

最后,flex打印语句trace不会打印到控制台,要先卸载flashplayer再安装一个debuger版的flashplayer,下载flashplayer_uninstall.zip,卸载,下载flashplayer10r12_36_winax_debug.exe。安装,卸载安装后好像谷歌浏览器没影响,然后eclipse改动默认浏览器为IE,window>preferences>General>Web browser。选择Internet Explorer,最后还有,启动tomcat后。必须在mxml上面右键debug执行,打开的IE才会打印trace,直接訪问网址是不行的。

请注明遗漏

版权声明:本文博客原创文章。博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/blfshiye/p/4662428.html

flex eclipse综合spring入门相关推荐

  1. JAVA常用API或编程工具002---SpringSource Tool Suite:基于Eclipse的Spring应用开发环境

    Spring Tool Suite(STS) 是一个基于Eclipse针对Spring应用量身定制的开发环境.提供了开发 Spring 应用必须的编码.调试.运行和部署功能.STS 在最新的 Ecli ...

  2. 【Spring】Spring入门

    Spring 入门 Spring 全家桶 Spring Framework -- Spring 框架 , 基石 Spring Boot -- 构建项目 Spring Cloud -- 微服务 Spri ...

  3. Spring入门第一讲——Spring框架的快速入门

    Spring的概述 什么是Spring? 我们可以从度娘上看到这样有关Spring的介绍: 说得更加详细一点,Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架, ...

  4. Eclipse Che安装入门和使用(一)

    Eclipse Che序列博文如下: 安装和调试篇:Eclipse Che安装入门和使用(一) Spring Web进阶篇:Eclipse Che开发Spring Web应用(入门) (二) 本文摘要 ...

  5. 使用Eclipse开发Spring的第一个简单程序

    使用Eclipse开发Spring的第一个简单程序 本篇文章将通过一个简单的入门程序向读者演示Spring框架的使用过程,具体如下: 使用Eclipse创建Web应用并导入JAR包 使用Eclipse ...

  6. spring入门程序

    Spring入门程序 步骤 1. 创建web项目,把sprng基础包和依赖包放入lib目录中 注意"[eclipse引入jar包的方法](https://blog.csdn.net/qq_2 ...

  7. IDEA下——Spring入门程序

    创建一个Maven的项目,我的项目结构如下: 在pom文件里写下需要导入的依赖: <?xml version="1.0" encoding="UTF-8" ...

  8. spring入门详细教程(五)

    前言 本篇紧接着spring入门详细教程(三),建议阅读本篇前,先阅读第一篇,第二篇以及第三篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/ ...

  9. Spring入门详细教程(四)

    前言 本篇紧接着spring入门详细教程(三),建议阅读本篇前,先阅读第一篇,第二篇以及第三篇.链接如下: Spring入门详细教程(一) https://www.cnblogs.com/jichi/ ...

最新文章

  1. python使用正則表達式
  2. python data analysis | python数据预处理(基于scikit-learn模块)
  3. 边缘计算框架_【北大成果】一种集成多组网协议多边缘计算框架的边缘计算处理平台...
  4. Java笔记-Java中备忘录模式
  5. uva10340 Ail in All
  6. Linux内核部件分析 设备驱动模型的基石kobject
  7. MySQL数据库左右连接
  8. yml在线格式转换工具
  9. Kafka的消息可靠性(防止消息丢失)
  10. 微信转发软件后缀_简单修改后缀让微信发送25M以上微信大视频
  11. %3cp%3e 修改 值 html,UEditor在JavaWeb中的应用
  12. mysql基本语句大全6_mysql基本sql语句大全(基础用语篇)
  13. 论AI在叮咚智能音箱中的演进和应用
  14. LNMP+coreseek(sphinx+mmseg3)搭建全文索引库_sgk
  15. 台式计算机加固态硬盘,台式机添加固态硬盘教程_台式主机固态硬盘怎么安装-win7之家...
  16. Exception in thread “main“ org.apache.http.conn.ConnectTimeoutException: Connect to 134.00.00.00:00
  17. ubuntu下如何查看和设置分辨率
  18. 一篇文章看懂MySQL的多表连接(包含左/右/全外连接)
  19. javascript 夯实基础
  20. 汇编指令-MOV与ldr区别

热门文章

  1. SuseLinux详解(3)——开启/关闭防火墙的方法
  2. [转]linux常用命令学习总结(超详细)
  3. java多线程的基本实现方式与示例
  4. 防灾科技学院计算机好就业吗,防灾科技学院2015年毕业生就业质量报告.pdf
  5. vue 查看变量类型_Vue学习 开始走向VUE开发2---插值使用详解
  6. coreldraw x4如何出血_告诉你如何把cdr转换成适合印刷的pdf
  7. java把对象放入数组_如何将对象添加到数组
  8. 《深度学习笔记》——初识PyTorch的学习笔记
  9. hihocoder第226周:打表找规律
  10. hihocoder第218周:AC自动机