如果我们只需要用到Flex的一部分功能,例如播放器功能,我们可以单独把Flex页面嵌入到Jsp页面中。要想实现此功能,需要下载一个工程,将其覆盖在服务器根目录下即可。你可以在次下载:FlexModule_j2ee.zip

在eclipse下新建一个web工程,将刚才下载的工程解压缩,然后将webtier文件夹下的内容覆盖服务器根目录下,如本人的:

注意要将lib文件夹和jars文件夹下的jar包添加到到类路径下,这样就算是整合完成了吧。

接着新建一个flex的mxml文件PlayVideo.mxml,将其放在WebContent下,代码如下所示:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  layout="absolute"
  3. creationComplete="init()">
  4. <mx:Script>
  5. <![CDATA[
  6. import mx.controls.Alert;
  7. private var rtmpURL:String="rtmp://localhost/oflaDemo";
  8. private var nc:NetConnection=new NetConnection();
  9. private var playerVideo:Video=new Video();
  10. [Bindable]
  11. private var stream:NetStream;
  12. private function init():void{
  13. playerVideo.width = 500;
  14. playerVideo.height = 400;
  15. connect();
  16. }
  17. private function connect():void{
  18. nc.addEventListener(NetStatusEvent.NET_STATUS,netStatus);
  19. nc.connect(rtmpURL);
  20. }
  21. private function netStatus(e:NetStatusEvent):void{
  22. trace(e.info.code);
  23. if(e.info.code=="NetConnection.Connect.Success"){
  24. stream=new NetStream(nc);
  25. playerVideo.attachNetStream(stream);
  26. stream.play("chirisyu_ytywn.flv");
  27. container.addChild(playerVideo);
  28. }
  29. }
  30. ]]>
  31. </mx:Script>
  32. <mx:UIComponent id="container"></mx:UIComponent>
  33. </mx:Application>

这个文件实现的是之前用Red5播放视频的减缩版。

接着新建一个jsp文件,如下所示:

  1. <%@page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@taglib uri="FlexTagLib" prefix="mm" %>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTDHTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  5. <html>
  6. <head>
  7. <meta http-equiv="Content-Type"content="text/html; charset=UTF-8">
  8. <title>测试</title>
  9. <style type="text/css">
  10. #mess{
  11. position: absolute;
  12. left: 250px;
  13. top: 25px;
  14. font-size: 22px;
  15. }
  16. #video{
  17. position: absolute;
  18. left: 250px;
  19. top: 70px;
  20. }
  21. </style>
  22. </head>
  23. <body>
  24. <div id="mess">
  25. 这是测试视频:
  26. </div>
  27. <div id="video">
  28. <mm:mxml source="PlayVideo.mxml" width="500" height="400">
  29. </mm:mxml>
  30. </div>
  31. </body>
  32. </html>

可以看出将mxml文件引入jsp需要做的事是:

1.声明引入标签,如<%@taglib uri="FlexTagLib" prefix="mm"%>。如果web.xml文件中没有添加

  1. <taglib>
  2. <taglib-uri>FlexTagLib</taglib-uri>
  3. <taglib-location>/WEB-INF/lib/flex-bootstrap-jsp.jar</taglib-location>
  4. </taglib>

,则会报错。

2.在<mm:mxml/>标签中引入mxml文件,里面有一些属性,可以查看API,本人就不在此赘述了。

好了,这样就可以测试了,运行jsp文件,如果成功运行则证明成功了:

当然,这个mxml用的是flex 3文件,如果换成flex4的话会报错,因为目前使用的jar包不支持Flex4标签,不知道作者会不会更新。

原创文章,转载请注明出处:http://www.it161.com/article/webDetail?articleid=140112111941

更多原创内容,请访问:http://www.it161.com/

将flex页面嵌入到jsp页面中的更多相关文章

  1. Java与Flex学习笔记(20)---将flex页面嵌入到jsp页面中

    如果我们只需要用到Flex的一部分功能,例如播放器功能,我们可以单独把Flex页面嵌入到Jsp页面中.要想实现此功能,需要下载一个工程,将其覆盖在服务器根目录下即可.你可以在次下载:FlexModul ...

  2. JSP页面错误处理 JSP页面代码正确却标红的解决办法

    保存,关闭JSP页面,重新打开即可解决 原因的IDE没有反应过来

  3. web页面乱码,JSP页面编码设置

    解决Web页面访问出现乱码bug,JSP页面首行添加: <%@ page language="java" contentType="text/html; chars ...

  4. J2EE项目中,servlet跳转到相应的JSP页面后,JSP页面丢失了样式效果

    原因: js和css的引用路径是相对路径.跳转后路径改变. 解决方法: 先在head标签中加入一下代码 <% String path = request.getContextPath(); St ...

  5. IntelliJ IDEA 2017版 spring-boot2.0.访问jsp页面;IDE Springboot JSp 页面访问

    1.编译器设置. 生成项目后,点击file 点开Modules 选中main,右键 选择新建文件夹 选中外部 右边添加 选中项目如图: 选好后选OK退出 webapp带点了,就是成功了,在这里建立的J ...

  6. html页面转成jsp页面之后样式变化的问题解决方法

    转载:https://blog.csdn.net/zeb_perfect/article/details/51172859

  7. .net asp 在1.asp页面嵌入另一个页面2.asp

    <iframe src="http://www.baidu.com" width="100%" height="100%" onloa ...

  8. JSP页面的构成

    JSP页面就是带有JSP元素的常规Web页面,它由静态内容和动态内容构成.其中,静态内容指HTML元素,动态内容(JSP元素)包括指令元素.脚本元素.动作元素.注释等内容. 1.指令元素     指令 ...

  9. JavaEE之动态页面技术(JSP/EL/JSTL)

    动态页面技术(JSP/EL/JSTL) JSP技术 jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%= ...

随机推荐

  1. C++11新特性之六——元编程

    C++11新特性之六——元编程

  2. cocos2d-x游戏引擎核心之三——主循环和定时器

    一.游戏主循环 在介绍游戏基本概念的时候,我们曾介绍了场景.层.精灵等游戏元素,但我们却故意避开了另一个同样重要的概念,那就是游戏主循环,这是因为 Cocos2d 已经为我们隐藏了游戏主循环的实现.读 ...

  3. php第二例

    参考: http://www.php.cn/code/3645.html 前言 由于navicat在linux平台不能很好的支持, PHP的学习转到windows平台. php IDE: PhpSto ...

  4. 实现类似printf这样的函数

    来源:http://www.vimer.cn/2009/12/cc%E5%AE%9E%E7%8E%B0%E5%A4%9A%E5%8F%82%E6%95%B0%E5%87%BD%E6%95%B0%E7% ...

  5. linux ctags

    在vim 下查找函数的定义是比较方法的事情,尤其是是跨文件的时候. 这时候可以通过安装ctags来实现函数定义跳转. 安装可以直接百度. 安装好之后,首先需要配置vim, 因为一般只有vim打开的文件 ...

  6. 生命游戏/Game of Life的Java实现

    首先简单介绍一下<生命游戏> 生命游戏其实是一个零玩家游戏.它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞.一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死 ...

  7. Groovy中的面向对象

    Groovy中的面向对象 前面说到groovy支持脚本和类,前面一节已将简单说了脚本和类之间的关系,这一节主要介绍一下groovy中类的相关知识,即面向对象相关知识. 1.类型 1.1 原始类型 gr ...

  8. LinearLayout学习笔记

    线性布局分两种,分别是水平线性布局和垂直线性布局,对应设置为android:orientation="horizontal"/"vertical". Linea ...

  9. Oracle之rman命令的使用(51CTO风哥rman课程)

    看rman的连接串的帮助 连接数据库 rman target/ rman的版本要和目标数据库一致(一般大版本可以往下兼容小版本) 运行操作系统命令 run {host "pwd"; ...

  10. android.os.Handler

    android.os.handler A Handler allows you to send and process Message and Runnable objects associated ...