# nanoHttp upload.html page lädt nicht



## pok1313 (23. Apr 2014)

Hallo,

ich kann den Webserver starten,  aber wenn ich auf upload klicke, passiert nichts.


```
package nanohttp;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;

public class StartServer extends NanoHTTPD {

    public StartServer() throws IOException {
        super(8080);
    }

    @Override
    public Response serve(String uri, Method method, Map<String, String> headers, Map<String, String> parms, Map<String, String> files) {
        uri = "";
        try {
            FileReader html = new FileReader(getClass().getResource("/webpage/index.html").getPath());
            BufferedReader reader = new BufferedReader(html);

            String line;
            while ((line = reader.readLine()) != null) {
                uri += line;
            }
        } catch (IOException ioe) {
        }

        return new Response(uri);
    }

    public static void main(String[] args) {
        StartServer server = null;

        try {
            server = new StartServer();
            server.start();
        } catch (IOException ioe) {
            System.err.println("Server konnte nicht gestartet werden:\n" + ioe);
            System.exit(-1);
        }
        System.out.println("Server läuft auf port 8080. Zum Beenden Enter drücken.\n");
        try {
            System.in.read();
        } catch (Throwable t) {
            server.stop();
        };
    }
}
```


```
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>File-Upload mit Fortschrittanzeige</title>
</head>
 
<body>
<script type="text/javascript">


function fileChange()
{
    //FileList Objekt aus dem Input Element mit der ID "fileA"
    var fileList = document.getElementById("fileA").files;
 
    //File Objekt (erstes Element der FileList)
    var file = fileList[0];
 
    //File Objekt nicht vorhanden = keine Datei ausgewählt oder vom Browser nicht unterstützt
    if(!file)
        return;
 
    document.getElementById("fileName").innerHTML = 'Dateiname: ' + file.name;
    document.getElementById("fileSize").innerHTML = 'Dateigröße: ' + file.size + ' B';
    document.getElementById("fileType").innerHTML = 'Dateitype: ' + file.type;
    document.getElementById("progress").value = 0;
    document.getElementById("prozent").innerHTML = "0%";
}

var client = null;

function uploadFile()
{
    //Wieder unser File Objekt
    var file = document.getElementById("fileA").files[0];
    //FormData Objekt erzeugen
    var formData = new FormData();
    //XMLHttpRequest Objekt erzeugen
   	client = new XMLHttpRequest();
	
    var prog = document.getElementById("progress");
 
    if(!file)
        return;
 
    prog.value = 0;
    prog.max = 100;
 
    //Fügt dem formData Objekt unser File Objekt hinzu
    formData.append("datei", file);
 
    client.onerror = function(e) {
        alert("onError");
    };
 
    client.onload = function(e) {
        document.getElementById("prozent").innerHTML = "100%";
        prog.value = prog.max;
    };
 
    client.upload.onprogress = function(e) {
		var p = Math.round(100 / e.total * e.loaded);
        document.getElementById("progress").value = p;            
        document.getElementById("prozent").innerHTML = p + "%";
    };
	
	client.onabort = function(e) {
		alert("Upload abgebrochen");
	};
 
    client.open("POST", "upload.php");
    client.send(formData);
}

function uploadAbort() {
	if(client instanceof XMLHttpRequest)
		//Briecht die aktuelle Übertragung ab
		client.abort();
}
</script>
 
<form action="" method="post" enctype="multipart/form-data">
    <input name="file" type="file" id="fileA" onchange="fileChange();"/>
    <input name="upload" value="Upload" type="button" onclick="uploadFile();" />
	<input name="abort" value="Abbrechen" type="button" onclick="uploadAbort();" />
</form>
<div>
    <div id="fileName"></div>
    <div id="fileSize"></div>
    <div id="fileType"></div>
    <progress id="progress" style="margin-top:10px"></progress> <span id="prozent"></span>
</div>
 
</body>
</html>
```


----------



## pok1313 (24. Apr 2014)

Keiner eine Idee...


----------



## VfL_Freak (24. Apr 2014)

Moin,

nein, nicht wirklich ...

Das Einzige. was mich leicht irritiert, ist die Zeile 44 :
[JAVA=44]
if( !file )
    return;
[/code]

Sicher, das "file" an der Stelle existiert ???:L
Läuft das Programm denn überhaupt in die upload-Funktion rein ???:L

Gruß
Klaus


----------



## pok1313 (28. Apr 2014)

Hm ka das war eine fertige web datei HTML5 File Upload - Fortschrittanzeige (Progressbar)

Die datei wird einfach nicht aufs device hochgeladen...


----------



## pok1313 (28. Apr 2014)

Vllt wird auch die Datei hochgeladen aber ich kann sie nirgendwo finden.
habe die permissions für die sd card hinzugefügt.

gibt es vllt einen versteckten temp ordner ?


----------

