社区
Web 开发
帖子详情
高手们:如何在JSP页面中嵌入FTP客户端上传和下载的代码
竭力进到完全的地步
2004-07-16 09:16:15
我想在JSP页面中嵌入FTP的客户端上传和下载的代码,如何实现?
...全文
627
7
打赏
收藏
高手们:如何在JSP页面中嵌入FTP客户端上传和下载的代码
我想在JSP页面中嵌入FTP的客户端上传和下载的代码,如何实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Drate
2004-10-15
打赏
举报
回复
Java、Java Applet与 JavaScript间的通信
http://www.chinaunix.net 作者:echoguo 发表于:2003-09-10 14:07:52
摘 要:本文着重阐述了网页开发中,通过灵活使用从JavaScript语言中访问Java的方法、从JavaScript中访问JavaScript小程序的方法与变量,以及在Java Applet小程序中使用JavaScript等技术,实现这几种网页开发语言的互相补充,以开发更完美的Web应用程序。
JavaScript是用于HTML环境的开发语言,提供了能够响应Web页面事件的脚本,可以完全访问浏览器窗口的各个方面,善于合并HTML、Java Applet小程序、插入件、服务器方程序和其他Web组件,形成完全集成的Web应用程序。而Java是功能强大的著名开发语言,能够支持Web应用程序的开发,用于开发高级Web对象,并提供实现嵌入Web页面的可执行内容,具有更强的编程功能,可以作为JavaScript功能的良好补充,只不过这些功能被限制在有限的浏览器窗口区中。
Java与JavaScript可以互相补充,以开发功能更完美的Web应用程序。本文归纳了笔者编程中曾使用过的,涉及到有关JavaScript与Java、Java Applet小程序之间互访的问题的一些方法,仅供参考。
一、从JavaScript中访问Java方法
在HTML脚本中可以用JavaScript直接调用Java中的方法,只需要在调用语句前用“java.lang.”加以表示即可。具体语句用法如下例所示:
java.Lang.System.Out.println(“Hello!”)
但此种方法只适用于Netscape Navigator,一般不提倡在Web应用程序中使用。
二、从JavaScript中访问Java Applet小程序中的方法和变量
通过JavaScript提供的Applet对象,JavaScript代码可以访问Java的变量和方法,具体步骤和用法示例如下。需要注意的是,JavaScript提供的applet对象具有name属性,而没有方法和事件处理器。
步骤:
1) 将要访问的Java Applet小程序的方法和变量声明为Public,且必须在Public类中声明;
2) Java Applet小程序要先装入才能访问,尽管applet对象没有定义onLoad事件,但可以在HTML文档的〈body〉标志中,指定使用Window对象的onLoad事件处理器;
3) Java Applet小程序可以用JavaScript的applet对象来访问。
示例:
“mytest.htm”
<html>
<head>
<script language="JavaScript">
function accessApplet()
{ setTimeout("changeText('I like JavaScript!')",1000);
setTimeout("changeText('I like JavaScript and Java!')",2000);
setTimeout("changeText('I like Java!')",3000);
setTimeout("accessApplet()",4000);
}
function changeText(s)
{
window.document.testText.setText(s)
//此处调用JavaApplet小程序的setText()方法
//注意,小程序的名字必须为〈applet〉标志 name属性所标识
}
</script>
</head>
<body onload="accessApplet()">
//通过调用accessApplet()装入小程序
<applet code="Testtext.class" name="testText" width=450 height=150>
</applet>
</body>
</html>
“Testtext.java”
import java.applet.*;
……
public class Testtext extends Applet
{ ……
public void setText(String s) //setText()必须声明为“public”
{
text=s;
repaint();
}
}
三、在Java Applet小程序中使用JavaScript
Live Connect提供了Java与JavaScript的接口,可以允许在Java Applet小程序中使用JavaScript。具体步骤如下:
1) 在HTML脚本中使用〈APPLET〉标志的MAYSCRIPT属性,以允许Java Applet小程序访问脚本;
2) 将netscape. JavaScript包导入Java Applet小程序;
3) 在Java Applet小程序中用JSObject类的getWindow( 方法创建JavaScript窗口的句柄;
4) 在Java Applet小程序中用JSObject类的getMember( 方法访问JavaScript对象;
5) 在Java Applet小程序中用JSObject类的eval( 方法调用JavaScript方法。
示例:
“ReadForm. Java”
import netscape.javascript.JSObject;
import netscape.javascript.JSException;
……
win=JSObject.getWindow(this); // 获取JavaScript窗口句柄,引用当前文档窗口
doc=(JSObject)win.getMember("document"); // 访问JavaScript对象
form=(JSObject)doc.getMember("textForm");
textField=(JSObject)form.getMember("textField");
text=(String) textField.getMember("value"); //获取文本区的值
……
win.eval("alert(\"This alert comes from Java!\")");
// 调用JavaScript的alert()方法
……
“User.htm”
……
<BODY>
<form name="textForm">
<P>Enter text and then click display text:
<input type="text" name="textField" size="20"></P>
</FORM>
<applet code="ReadForm.class" width=200 height=100 name="readApp" MAYSCRIPT>
//必须使用MAYSCRIPT属性标志
</APPLET>
</BODY>
附表列举了JSObject类的方法和描述,更详细的说明可以参考MSDN。值得一提的是,本文中程序示例加下划线的部分,要特别引起注意。
Drate
2004-10-15
打赏
举报
回复
jsp与applet通信
(编译/Blueski)
很简单,你可以使用 java.net.URLConnection 和 java.net.URL类来打开一个标准的 HTTP连接,与web 服务器取得连接。服务器随后以通常的方式将这一信息传送给servlet。基本上,applet可以看作是一个a web浏览器,servlet并不能区分这2者。对servlet来说,applet仅仅是另一个HTTP客户。
(当然,你可以写一个servlet,专门由你的applet对它进行调用,在这种情况下servlet确实能知道2者的差别。你也可以在一个客户段TCP端口打开一个ServerSocket,然后让你的applet打开一个 Socket连接。然后你必须设计和实现一个客户段socket-level协议来对通信进行处理。这就是你可以写的东西。例如,一个聊天applet和一个servlet进行通信。总之,做一个客户端协议相比用HTTP要花费更多工作量,但更灵活。但是,客户端协议要花费长时间来通过防火墙。)
如要看更详细资料,你可以参考下列页面:
http://www.sun.com/software/jwebserver/faq/faq.html
Questions C8
http://www.sun.com/software/jwebserver/faq/faq.html#c8
和 C9
http://www.sun.com/software/jwebserver/faq/faq.html#c9。
Chad Darby有一篇带源程序的文章在:
http://www.j-nine.com/pubs/applet2servlet/index.htm.
Netscape DevEdge Online 也有类似文章 - 企业应用中Applet-to-Servlet通信
http://developer.netscape.com/viewsource/index_frame.html?content=fields_servlet/fields_servlet.html
szabo
2004-10-15
打赏
举报
回复
楼主觖决没有呀?
我也想怎么知道怎么做呀。
解决了总结一下,写出来好吗?????????
竭力进到完全的地步
2004-07-16
打赏
举报
回复
数字金刚:
我的意思是:上传和下载的FTP客户端代码我已经写好了,我的问题是:如何在JSP中调用这段上传和下载的代码?如果用Applet,它和JSP之间如何通讯?
谢谢!
gjd111686
2004-07-16
打赏
举报
回复
XMLHttp下载,注意如果你要下载二进制文件可以用xmlHttp的responseBody属性然后用ado.stream来实现存在本地.
<input type=text value="Http://10.70.38.10/" id="URLID">
<input type=button value="XMLHTTP" onclick="DownURL()">
<script>
function DownURL()
{
var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP");
xmlHTTP.open("POST",URLID.value,false);
xmlHTTP.send();
//window.confirm(unescape(xmlHTTP.responseText));
BodyID.value=unescape(xmlHTTP.responseText);
}
</script>
<br>
<textarea cols=100% rows=10 id="BodyID">
</textarea>
gjd111686
2004-07-16
打赏
举报
回复
Applet中的下载URL
public void ReadURL(String strURL)
{
try
{
int iHttpResult;
URL m_URL=new URL(strURL);
URLConnection m_URLConn=m_URL.openConnection();
m_URLConn.connect();
HttpURLConnection m_HttpConn=(HttpURLConnection)m_URLConn;
iHttpResult=m_HttpConn.getResponseCode();
if(iHttpResult!=HttpURLConnection.HTTP_OK)
JOptionPane.showMessageDialog(this,"无法连接...");
else
{
int iFileSize=m_URLConn.getContentLength();
InputStreamReader m_Reader=new InputStreamReader(m_URLConn.getInputStream());
char[] Buffer=new char[2048];
int iNum=0;
while(iNum>-1)
{
iNum=m_Reader.read(Buffer);
if(iNum<0)break;
//JOptionPane.showMessageDialog(this,new String(Buffer,0,iNum));
}
m_Reader.close();
}
}
catch(Exception e)
{
JOptionPane.showMessageDialog(this,e.getMessage());
}
}
gjd111686
2004-07-16
打赏
举报
回复
需要Applet支持或者用微软的XMLHttp来实现.
FTP
上传
(JSP/HTML
嵌入
)
--而
FTP
的
上传
需要
客户端
,大部分是用页面
嵌入
APPLET或其他控件的模式---这个是用Delphi实现的,直接用就可以!!! 还有个Applet版本的,过一段时间我会发上来。 如果有疑问,发邮件给我: xiaosanshaoli@126...
FTP
大附件
上传
解决方案
FTP
上传
必须有
客户端
软件,在web
中
常采用
嵌入
jsp的页面控件,初次使用需要自动安装在IE
中
(网易,腾讯就是这种模式)------常用的控件都是用C++做的,java的Applet因为
客户端
必须安装jre,所有用的不多。 2.
FTP
上传
...
jsp三大指令标记,七大动作标记、详解。
JSP的基本构成
JSP页面
主要由指令标签,注释,
嵌入
Java
代码
,JSP动作标签,HTML标记语言等五个元素组成。3个指令标签 1 、page指令page指令用户定义
JSP页面
中
的全局属性 ,Eg:<%@ page attr1=”value1” ...
JSPServlet精华笔记
▶ 由应用服务器
中
的JSP引擎来编译和执行
嵌入
的Java脚本
代码
▶ 然后将生成的整个页面信息返回给
客户端
二、 JSP工作原理(执行流程) Web容器处理JSP文件请求需要经过3个阶段: ▶ 翻译阶段(转译阶段) ...
jsp里java
代码
报错_JavaEE-01 JSP动态网页基础
学习要点B/S架构的基本概念Web项目的创建和运行
JSP页面
元素MyEclipse创建和运行Web项目Web程序调试Web简史web前端技术演进三阶段WEB 1.0:信息广播。WEB 2.0:信息交互。 微博、博客等。WEB 5.0:移动互联网。动态...
Web 开发
81,092
社区成员
341,718
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章