java applet只会在本地保存文件,而不是在服务器上保存?

时间:2010-10-17 16:32:31

标签: java applet

我有一个在我的桌面计算机上本地运行良好的java applet。但当我把它放在我的Linux网络服务器上时,它的工作原理,但保存文件功能是将文件保存到Web浏览器临时文件夹而不是Web服务器。

<applet name="rapplet" type="applet" archive="applets.jar" 
     code="acap.class" codebase="." height="96" width="150"> 
<param name="msg" value="test.snd" />

3 个答案:

答案 0 :(得分:4)

Java applet在客户端浏览器中运行,而不是在服务器上运行,这解释了为什么无法将文件保存到服务器。

答案 1 :(得分:3)

你需要:

  • 处理文件上传的服务器端代码。查看java servlets和commons-fileupload
  • applet必须通过HTTP发送文件。您可以使用Apache HttpClient
  • 执行此操作

更新:您似乎错过了Java applet的重点 - 他们在客户端上运行 。在浏览器中,即。它们与服务器完全无关。如果你想与服务器进行任何通信,你需要一些协议 - 它可以是HTTP(如我所建议的),它可以是普通的套接字,或任何其他适合你的协议。

答案 2 :(得分:0)

如果您网站上的小程序可以直接将字节保存到服务器,那么其他人的网站(或许多其他类型的应用程序)上的可信小程序也可以这样做。

如果某人是恶意的,他们可能会向您的服务器转储几千兆字节,从而导致各种问题。

出于这个原因,服务器需要保护自己免受此类拒绝服务攻击,并且所有上传都需要通过服务器专门提供的接口来完成。例如,此接口可能会检查上载的大小,并且它不包含任何病毒或特洛伊木马。