2016-10-18 22 views
0

現在、glassfishサーバーインスタンス上のディレクトリに画像を保存するWebサービスを作成しています。何らかの理由で、Webサービスがクライアントから消費されると、ディレクトリまたはファイルが見つからないと表示されます。メソッドにバイト配列を渡しています。私のコードは以下の通りです:webserviceを使用してglassfishに画像を保存する

@WebMethod(operationName="upload") 
public String upload(String fileName, byte[] imageBytes){ 
    String filePath = "/bucketlister/images/feature pictures/"+fileName; 
    try{ 
     FileOutputStream fos = new FileOutputStream(filePath); 
     BufferedOutputStream bos = new BufferedOutputStream(fos); 
     bos.write(imageBytes); 
     bos.close(); 
     return "Received file:" + filePath; 
    }catch(IOException e){ 
     throw new WebServiceException(e); 
    } 
} 

FileOutputStreamはFileNotFoundExceptionをスローします。何か案は?私は、バイト配列を使用することを好むだろうが、私は他の提案に開いています。

+0

あなたがドキュメントを確認しましたし、「機能画像」ディレクトリを変更

String filePath ="home/user/glassfish4/domains/domain1/bucketlister/images/feature_picture/" + fileName; 

を行っている必要がありますか? > [* FileNotFoundException - ファイルが存在するが、通常のファイルではなくディレクトリである場合、存在しないが作成できないか、他の理由で開くことはできない*](https://docs.oracle.com/例外や問題の詳細を教えてください –

+0

@NickBellいいえ、そのようなファイルやディレクトリはありません –

+0

あなたの 'filePath'にスペースがあります – Mike

答えて

0

答えは私をずっと見つめていたと思います。filePathはディレクトリの半分だけを指していました。それが何かを変更した場合、私は知らないが、私は「feature_picture」

関連する問題