使用Flash的XMLSocket与Servlet建立长连接(6,建立测试的jsp)
来源:互联网 发布:淘宝优惠论坛 编辑:程序博客网 时间:2024/04/28 11:35
使用Flash的XMLSocket与Servlet建立长连接(6,建立测试的jsp)
下面的测试jsp用于对我们之前所作的工作进行测试
这里并不包含全部的代码,比如
header.jsp include文件, 里面定义了一些页面常量, ctxp = request.getContextPath()
log.css 定义日至窗口的样式
com.YAHOO.log.js 日志类
style.css 显示样式
没有包含
另外里面的资源路径与前面保存的资源路径有关,须自行修改
完整的测试代码请到本人的网站上面下载或者留言
<%@ page contentType="text/html; charset=GBK"%>
<%@ include file="/include/header.jsp"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>test2.html</title>
<link rel="stylesheet" type="text/css" href="<%=ctxp%>/css/log.css">
<link rel="stylesheet" type="text/css" href="<%=ctxp%>/css/style.css">
<script type="text/javascript" src="<%=ctxp%>/js/com.YAHOO.log.js"></script>
<script type="text/javascript" src="<%=ctxp%>/js/com.inet.base.js"></script>
<script type="text/javascript" src="<%=ctxp%>/js/com.inet.inet.js"></script>
<script type="text/javascript" src="<%=ctxp%>/js/com.inet.http.js"></script>
<script type="text/javascript" src="<%=ctxp%>/js/com.inet.evnt.js"></script>
<script type="text/javascript" src="<%=ctxp%>/js/com.inet.xbar.js"></script>
<script type="text/javascript">
function toggleygLogger(el)
{
if(el.value == "禁用日志")
{
ygLogger.disable();
el.value = "显示日志";
}
else
{
ygLogger.enable();
el.value = "禁用日志";
}
}
function CreateLog(_doc)
{
if(_doc == null || _doc == undefined)
{
_doc = window.document;
}
var _panel = _doc.getElementById("rightbar");
if(_panel == null || _panel == undefined)
{
_panel = _doc.createElement("DIV");
_panel.id = "rightbar";
var _oH3 = _doc.createElement("H3");
_oH3.innerHTML = "<input type=/"button/""
+ " onclick=/"javascript:void(toggleygLogger(this))/" value=/"禁用日志/"/> "
+ "<input type=/"button/""
+ " onclick=/"javascript:void(document.getElementById('LogDIV').innerHTML='')/" value=/"清空日志/"/>";
var _oDiv = _doc.createElement("DIV");
var _sCss = "top:0px; width:100%; height:400px; font-family:Arial, Helvetica, sans-serif;position:relative;overflow:auto;text-align:left;z-index:998;font-size:84%;";
_oDiv.id = "LogDiv";
_oDiv.style.cssText = _sCss;
_doc.body.appendChild(_panel);
_panel.appendChild(_oH3);
_panel.appendChild(_oDiv);
_panel.style.top = "10px";
_panel.style.left = "550px";
_panel.style.width = "360px";
_panel.style.height = "445px";
}
}
function InitLog(_doc)
{
CreateLog(_doc);
ygLogger.init(document.getElementById("LogDiv"));
logger = new ygLogger("");
}
var xbar = null;
var socket = null;
function connect(on)
{
if(on == 0)
{
var host = document.oForm.host.value;
var port = document.oForm.port.value;
if(host == null || host == "")
{
alert("请填写主机地址 !");
return;
}
if(port == null || port == "")
{
alert("请填写端口号 !");
return;
}
logger.debug("连接到:" + host + ":" + port);
alert("连接到: " + host + ":" + port);
socket.connect(host, parseInt(port));
}
else if(on == 1)
{
socket.close();
}
}
function sendmsg(msg)
{
var str = window.document.oForm.msgTxt.value;
if(str == null || str == "")
{
alert("请填写发送内容 !");
return;
}
socket.send(str);
}
// 装载策略文件
function allowDomain0(port)
{
policy = "/crossdomain.xml";
function fun1()
{
com.inet.inet.Socket.loadPolicyFile("http://aaa:" + port + policy);
}
function fun2()
{
com.inet.inet.Socket.loadPolicyFile("http://localhost:" + port + policy);
}
function fun3()
{
com.inet.inet.Socket.loadPolicyFile("http://127.0.0.1:" + port + policy);
}
function fun4()
{
com.inet.inet.Socket.loadPolicyFile("http://chenyankui.com:" + port + policy);
}
setTimeout(fun1, 1500);
setTimeout(fun2, 3500);
setTimeout(fun3, 5500);
setTimeout(fun4, 7500);
}
function allowDomain2(port)
{
function fun1()
{
com.inet.inet.Socket.loadPolicyFile("xmlsocket://aaa:" + port);
}
function fun2()
{
com.inet.inet.Socket.loadPolicyFile("xmlsocket://localhost:" + port);
}
function fun3()
{
com.inet.inet.Socket.loadPolicyFile("xmlsocket://127.0.0.1:" + port);
}
function fun4()
{
com.inet.inet.Socket.loadPolicyFile("xmlsocket://chenyankui.com:" + port);
}
setTimeout(fun1, 1500);
setTimeout(fun2, 3500);
setTimeout(fun3, 5500);
setTimeout(fun4, 7500);
}
function Init()
{
try
{
InitLog();
logger.debug("初始化日志成功 !");
logger.debug("Flash Version:" + com.inet.inet.Socket.getFlashVersion());
//com.inet.inet.Socket.setLogLevel("DEBUG");
com.inet.inet.Socket.setLogLevel("INFO");
//allowDomain0(7272);
xbar = new XBar(400, 25, "#FFFFFF", "#333399");
xbar.setCenter();
socket = new com.inet.inet.Socket();
socket.onXml = function(src)
{
logger.debug("[XML]: " + src);
}
socket.onData = function(src)
{
// logger.debug("[TXT]: " + src);
var value = parseInt(src);
xbar.setValue(value * 4);
if(value < 10)
{
src = "0" + src;
}
xbar.setText("${percent}% 页面正在加载, 请稍候 !".replace("${percent}", src));
if(value == 100)
{
alert("加载完成 !");
xbar.show(false);
}
}
socket.onClose = function()
{
alert("!!! Socket Closed !!!");
}
socket.onConnect = function(success)
{
if(success == true)
{
logger.debug("连接成功 !");
xbar.setValue(0);
xbar.setText("${percent}% 页面正在加载, 请稍候 !".replace("${percent}", "00"));
// 显示进度条
xbar.show(true);
// socket.request("/flash/FlashProxyServlet");
socket.request("<%=ctxp%>/XBarServlet?user=aaaa", "POST", "test=test&user=aaaa");
}
else
{
alert("连接失败 !");
}
}
}
catch(e)
{
alert(e.name + ":" + e.message);
}
}
function closeServer()
{
Http.sendRequest("http://127.0.0.1:7273/", null, "GET", true, null, null);
}
function test()
{
test5();
}
</script>
</head>
<body onload="Init()" leftmargin="20" topmargin="10">
<OBJECT id="Socket" width="500" height="200" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codeBase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0">
<param NAME="movie" VALUE="<%=ctxp%>/fls/net.swf">
<param NAME="quality" VALUE="high">
<param name="bgcolor" value="#C0C0C0">
</OBJECT>
<form name="oForm">
<table width="500" border="0" cellpadding="0" cellspacing="1" bgcolor="#FF0000">
<tr>
<td align="left" width="10%" bgcolor="#FFFFFF">
<strong>主机:</strong>
<!-- <input type="text" name="host" value="127.0.0.1"> -->
<select name="host">
<option value="aaa">aaa</option>
<option value="localhost">localhost</option>
<option value="127.0.0.1">127.0.0.1</option>
<option value="196.168.0.1">196.168.0.1</option>
<option value="chenyankui.com">chenyankui.com</option>
</select>
</td>
</tr>
<tr>
<td align="left" width="10%" bgcolor="#FFFFFF">
<strong>端口:</strong>
<input type="text" name="port" value="8080">
</td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="#FFFFFF">
<textarea name="msgTxt" rows="10" cols="68"></textarea>
</td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="#FFFFFF">
<input type="button" value="连接" onclick="connect(0)">
<input type="button" value="关闭" onclick="connect(1)">
<input type="button" value="发送" onclick="sendmsg(1)">
<input type="button" value="关闭服务器" onclick="closeServer()">
</td>
</tr>
</table>
</form>
<br/>
</body>
</html>
- 使用Flash的XMLSocket与Servlet建立长连接(6,建立测试的jsp)
- 使用Flash的XMLSocket与Servlet建立长连接(4,建立测试的Servlet类)
- 使用Flash的XMLSocket与Servlet建立长连接(7,测试的页面截图)
- 使用Flash的XMLSocket与Servlet建立长连接(5,建立JavaScript的进度条类)
- 使用Flash的XMLSocket与Servlet建立长连接(1,建立socket控件)
- 使用Flash的XMLSocket与Servlet建立长连接(2,建立JavaScript类)
- 使用Flash的XMLSocket与Servlet建立长连接(3,建立XMLSocketWriter类)
- 使用Flash的XMLSocket与Servlet建立长连接(8,net.fla的辅助类)
- IM长连接建立XMPP协议的使用
- 安卓中使用WebSocket建立简单实用的长连接
- android 建立长连接的方法
- 使用socket建立长连接
- 建立与 Apache 的连接
- JSP与数据库建立连接
- iOS中使用GCDAsyncSocket建立长连接
- Android使用Mina建立长连接
- 使用ADOMD.NET建立与Analysis Services的连接
- 使用ADOMD.NET建立与Analysis Services的连接
- 鬼扯日记 - 45 幸福是什么 呵呵
- 各种不同含义的NEW和DELETE
- FlexLM 5.12
- Principles of Network and System Administration , Second Edition
- Windows 系统端口详解
- 使用Flash的XMLSocket与Servlet建立长连接(6,建立测试的jsp)
- 学习需要不断的进行 不要让杂乱的事情分散你的注意力
- SqlServer安装过程的挂起问题的解决方案
- 用存储过程生成单据号
- 自学-不是文章!
- 职业素养.
- 【求助】vb程序通过批处理文件调运java混淆器进行混淆错误!
- web.xml 祥解
- 揭开Linux的Swap之谜