如果我们只需要用到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. Nginx遇上Access Denied提示怎么解决

    这几天在摆弄linux下面的各种服务器,对nginx非常有兴趣. 于是把phpmyadmin传上去了,先是phpmyadmin配了半天,结果配好之后发现phpmyadmin一些logo.css.js文 ...

  2. PyQt4重写事件处理方法

    PyQt中的事件处理主要以来重写事件处理函数来实现. #!/usr/bin/python # -*- coding: utf-8 -*- import sys from PyQt4 import Qt ...

  3. js获取一个字符串中指定字符第n次出现的位置

    function nthIndexOf(str,c,n){ var x=str.indexOf(c); for(var i=0;i<num;i++){ x=str.indexOf(c,x+1); ...

  4. web基础----->模板引擎Velocity的使用(二)

    这里面是关于velocity的一些用法,比较基础的使用.愿你生命中有够多的云翳,来造成一个美丽的黄昏. velocity生成javaBean 一.定义一个简单的bean类 public class C ...

  5. 银联支付-产品测试sdk使用流程

    准备工作: 到https://open.unionpay.com/ajweb/help/file/techFile?productId=66下载开发文档和sdk 下载之后进行解压将Java Versi ...

  6. JS-获取class类名为某个的元素-【getClass】函数封装

    原理: /*  * 根据class获取元素. * 原理是,取出oparent下的所有元素,组成数组,然后遍历类名,全等判断.*/ 源码 1 function getClass(oParent,clsN ...

  7. C# TOKEN的保存与验证

    Token主要为了防止非本页数据的提交,防止重复提交. /** * * 保存TOKEN信息 * */ public void saveToken() { //此处生成md5串 string md5 = ...

  8. 为listview的item中的元素设置onclick事件

    表达能力比较差,所以现在解释一下标题的意思:listview的列表项,点击的时候触发的是itemOnClick事件,点击后转向到A页:那么,假如在子项中有一个连接是想转到B页,我们该怎么办呢.这样能明 ...

  9. [Android Tips] 32. 解决 Android Device Monitor 在 Mac OS X 卡住

    Alternatively you can keep latest jdk and update swt used by monitor: get updated swt: https://www.e ...

  10. 170707、springboot编程之监控和管理生产环境

    spring-boot-actuator模块提供了一个监控和管理生产环境的模块,可以使用http.jmx.ssh.telnet等拉管理和监控应用.审计(Auditing). 健康(health).数据 ...