# Mittel Applet Datei an ein Webserver übertragen



## Sued_Faust (13. Jul 2010)

Moin Moin,

wie man schon aus dem Titel des Threads herausnemen kann, will ich ein Applet erstellen, welches mittels einer URL eine Datei auf den Webserver läd.
Die URL verweisst dabei auf eine art FileStore und könnte z.b so aussehen:


```
http://127.0.0.1:8080/share/proxy/alfresco/api/node/content/workspace/SpacesStore/579e42c2-fe8a-468d-a039-cb05dc719a59/TestDoc.odt?overwriteFlag=true
```

unter dieser Adresse auf der Serverseite, liegt eine Datei die überschrieben werden soll.

Meine Frage lautet wie mache ich das?
Wie Lass ich eine Datei mittels dieser Url auf der Serverseite überschreiben?

Hatte schon ein wenig was gefunden bin mir aber garnicht sicher ob ich damit richtig liege.


```
public void openConnection() throws IOException{
		File file = loadFile();
		FileInputStream fileInputStream = new FileInputStream(file);

		try {
			URL                url; 
			HttpURLConnection      urlConn; 
		    DataOutputStream   dos; 
		    
		    url = new URL(serverURL); 
		    urlConn = (HttpURLConnection) url.openConnection(); 
		    urlConn.setDoInput(true); 
		    urlConn.setDoOutput(true); 
		    urlConn.setUseCaches(false); 
		    urlConn.setRequestProperty ("Content-Type", "application/x-www-form-urlencoded");
		    
		    int responseCode = urlConn.getResponseCode();	    
		    if (responseCode == HttpURLConnection.HTTP_OK){
		    
		    initProgressMonitor(url, urlConn);
		    
		    dos = new DataOutputStream (urlConn.getOutputStream()); 
		    
		    bufferSize = Math.min(bytesAvailable, maxBufferSize);
            buffer = new byte[bufferSize];

		    	           
            int bytes;
            while ((bytes = pmis.read(buffer)) > 0) {
            	dos.write(buffer, 0, bytes);
            	
            	dos.flush();
            }
    	

		    pmis.close();
		    
            fileInputStream.close();
 
		    dos.flush(); 
		    dos.close();
		    }else{
		    	System.out.print(urlConn.getResponseCode());
		    }

		}catch(Exception e){
			e.getStackTrace();
		}
		
	}
```

danke im vorraus!

Gruß


----------



## L-ectron-X (13. Jul 2010)

Mit einem Applet alleine kannst du nicht auf einen Server schreiben.
Du brauchst eine aktive Komponente dazwischen. Z.B. PHP, CGI, JSP oder einen RMI-Server.
In der FAQ ist zumindest eine Version mit PHP beschrieben: http://www.java-forum.org/applets/10751-applets-ueber-php-dateien-schreiben.html


----------



## Sued_Faust (14. Jul 2010)

Moin, danke schon mal für die Antwort!

Problem ist nur, dass das Applet in ein vorhandenes System eingebettet werden soll. Das bestehende System hatte auch schon eine Uploadfunktion mittels Actionscript und Flasch realisiert. Da muss dann doch schon Serverseitig eine aktive Komponente vorhaden sein?!
Und auf diese würde ich ganz gerne zugreifen, weil ich mir nicht vorstellen kann das ich mittels des serbsterstellten scripts(php...) auf den FileStore zugreifen kann.


----------

