Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在客户机上获取/读取xml文件?_Javascript_Ajax_Servlets_File Upload - Fatal编程技术网

Javascript 如何在客户机上获取/读取xml文件?

Javascript 如何在客户机上获取/读取xml文件?,javascript,ajax,servlets,file-upload,Javascript,Ajax,Servlets,File Upload,我需要创建一个网页,用户在其中提交一个XML文件,我使用该文件动态更新页面 我遵循一个教程,并在javascript文件中包含以下代码: function uploadFile(){ var path = "processXML?action=process&id=" + escape(fileChooser.value); req = initRequest(); req.open("GET", path, true); req.onreadystate

我需要创建一个网页,用户在其中提交一个XML文件,我使用该文件动态更新页面

我遵循一个教程,并在javascript文件中包含以下代码:

function uploadFile(){
    var path = "processXML?action=process&id=" + escape(fileChooser.value);
    req = initRequest();
    req.open("GET", path, true);
    req.onreadystatechange = callback;
    req.send(null);
}
我还在Javaservlet中设置了URLpattern/processXMl。虽然我正在学习一些新的东西,但这不是我想要达到的。open()方法正在指定服务器上的文件


如何从客户机读取/接收XML文件,以便在服务器上的Java类中处理它?

单独发送所选文件的文件名(或某些较差的浏览器中的文件路径)作为请求参数根本不起作用。您将无法在服务器端以任何方式检索文件内容(除非webbrowser和webbrowser碰巧在同一台机器上运行,但这当然不会在实际生产中发生)。您需要让客户端发送文件内容。文件名只是元数据信息

在HTML5/XHR2出现之前,通过ajax发送文件内容是不可能的。HTML5/XHR2相对较新,目前仍在广泛使用的所有浏览器都不支持。我建议改为通过隐藏iframe中的表单模拟异步文件上载。有很多JavaScript插件可以实现这一点,比如和

要获取servlet中的文件内容,通常需要使用新方法,或者如果已经使用servlet 3.0,则使用新方法

另见:

单独发送所选文件的文件名(或某些较差的浏览器中的文件路径)作为请求参数根本不起作用。您将无法在服务器端以任何方式检索文件内容(除非webbrowser和webbrowser碰巧在同一台机器上运行,但这当然不会在实际生产中发生)。您需要让客户端发送文件内容。文件名只是元数据信息

在HTML5/XHR2出现之前,通过ajax发送文件内容是不可能的。HTML5/XHR2相对较新,目前仍在广泛使用的所有浏览器都不支持。我建议改为通过隐藏iframe中的表单模拟异步文件上载。有很多JavaScript插件可以实现这一点,比如和

要获取servlet中的文件内容,通常需要使用新方法,或者如果已经使用servlet 3.0,则使用新方法

另见:

我认为使用php上传文件可能是一种选择:s php不在webbrowser中运行。它是在webbrowser中运行的HTML/CSS/JS。我认为使用php上传文件的功能可能是一个选项:webbrowser中不运行php。它是在webbrowser中运行的HTML/CSS/JS。