如果我们只需要用到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. Linux命令之type - 显示命令的类型

    用途说明 type命令用来显示指定命令的类型.一个命令的类型可以是如下之一 alias 别名 keyword 关键字,Shell保留字 function 函数,Shell函数 builtin 内建命令 ...

  2. poj_1390 动态规划

    题目大意 将一些连续的序列根据颜色分为N段,每段有颜色 为 Ci, 长度为 Li.每次点击其中的一段 i ,则可以将该段i消除,该段相邻的两段自动连接到一起,如果连接到一起的两段之前的颜色相同,则更新 ...

  3. 手机QQ会员H5加速方案——sonic技术内幕

    版权声明:本文由况鹰原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/141 来源:腾云阁 https://www.qclou ...

  4. poj3744 Scout YYF I[概率dp+矩阵优化]

    Scout YYF I Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8598   Accepted: 2521 Descr ...

  5. c# SQL Server数据库操作-管理命令参数的类:SqlParameter

    使用SqlCommand类来执行Transact-SQL语句或存储过程时,有时需要用参数传值或作为返回值,SqlParameter类正是为了此需要而设计的类.下面介绍如何使用该类为SqlCommand ...

  6. 图片的ScaleType详解 ImageView的属性android:scaleType,

    imageView.setScaleType(ImageView.ScaleType.FIT_XY ); 这里我们重点理解ImageView的属性android:scaleType,即ImageVie ...

  7. 网络下载功能实现(downloader ) ---- HTML5+

    模块:downloader Downloader模块管理网络文件下载任务,用于从服务器下载各种文件,并支持跨域访问操作.通过plus.downloader获取下载管理对象.Downloader下载使用 ...

  8. UUID的定义以及作用

    UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OS ...

  9. 【node】------module.exports&&exports之间的区别------【巷子】

    1.再讲module.exports 与exports之间的区别的时候我们先来回顾一下js里面的引用传递 001.引用传递 var arr = [10,20,30]; var newarr = arr ...

  10. SQLite随机获取一行数据

    Mysql中随机获取一行数据: SELECT * FROM table ORDER BY RAND() limit 1 SQLite中随机获取一行数据: SELECT * FROM table ORD ...