je veut recuperer un fichier depuis un poste client vers un serveur
, normalement j'ai trouver une servlet qui fait ca sur le net mais elle
marche pas
voila le code que j'utilise ,si vous pouvez voir si c'est comme ça qu'il faut faire ou pas
et merci
java.util.Date servletStart = new java.util.Date( );
String localFilePath = request.getName( "fichier" );
String filename = request.getParameter( "fichier" );
String filename = request.getParameter( "fichier.filename" );
String contentType = request.getParameter( "file.content-type" );
// security: make sure we don't have some sort of hidden command in the filename
if ( filename.indexOf( "&" ) > -1 ) // disallow mischif in unix
filename =
filename.substring( filename.lastIndexOf( "&" ) + 1,
filename.length( ) );
if ( filename.indexOf( ";" ) > -1 ) // disallow mischif in unix
filename =
filename.substring( filename.lastIndexOf( ";" ) + 1, filename.length( )
);
if ( filename.indexOf( "\r" ) > -1 ) // disallow mischif
filename =
filename.substring( filename.lastIndexOf( "\r" ) + 1, filename.length(
) );
if ( filename.indexOf( "\n" ) > -1 ) // disallow mischif
filename =
filename.substring( filename.lastIndexOf( "\n" ) + 1, filename.length(
) );
if ( filename.equals( "" ) ) // if file ended in bad char, we need a filename
filename = "a.dat";
String copyString = "cp " + localFilePath + " /home/jamalm/article_projet/" + filename;
Process child = Runtime.getRuntime( ).exec( copyString );
try {
child.waitFor( );
}
catch( InterruptedException e ) {
System.err.println( e );
}
out = response.getWriter( );
//out.println( "done" );
out.flush( );
out.close( );
java.util.Date servletFinish = new java.util.Date( );
long servletRunTime = servletFinish.getTime( ) - servletStart.getTime( );
System.err.println( "uploader:
uploaded " + filename + " - servletRunTime=" + servletRunTime + "\n" );
|