2011-11-11 25 views
5

Sto cercando di scrivere in un file in Google AppEngine, ma dando un messaggio di errore java.io.FileOutputStream is not supported by Google App Engine's Java runtime environmentGoogle AppEngine non sostenere FileOutputStream

anche se ho importato

import java.io.File; 
import java.io.FileInputStream; 

import java.io.FileOutputStream; 
import java.io.IOException; 

risposta

10

Beh, non è un errore di compilatore java. Questa classe è un'API limitata in Google App Engine a cui non è consentito utilizzarla.

Leggi le GAE Java Runtime Environment e restrizioni qui: http://code.google.com/appengine/docs/java/runtime.html

Il più vicino si arriva a presentare memorizzazione su GAE è l'API blobstore: http://code.google.com/appengine/docs/java/blobstore/

Se è necessario creare i file nel codice GAE è non è una piattaforma appropriata per te.

+0

grazie Strelok, è possibile caricare file su un altro server ftp con componenti gwt o gxt in front end ?? –

+1

No, non è possibile aprire alcuna connessione socket eccetto utilizzando il servizio URL Fetch su HTTP/HTTPS per questi intervalli di porte: 80-90, 440-450, 1024-65535. – Strelok

+0

Non sono sicuro di quali siano le vostre esigenze, ma ecco come scrivete allo store BLOB http://code.google.com/appengine/docs/java/blobstore/overview.html#Writing_Files_to_theBlobstore – Strelok

3

Hai provato a usare java.io.ByteArrayOutputStream piuttosto che FileOutputStream?

Ciò dovrebbe consentire di utilizzare le librerie esterne che richiedono i file, ma ancora lavorano all'interno della lista bianca GAE JRE

+0

in qualsiasi modo grazie signore, ho risolto questo problema cambiando il server. :( –

0

piattaforma GAE consente accesso in sola lettura al file system all'interno di file di applicazione ambito pf. Se proprio devi scrivere qualcosa, Datastore e Blobstore è il posto dove scrivere!

+0

in qualsiasi modo grazie signore, ho risolto questo problema cambiando il server. :( –

Problemi correlati