FileNotExceptionエラー(アクセス権限)は、解決しました。ありがとうございました。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
編集履歴を参照して、質問の内容を元に戻してください。teratailでは、質問内容の消去は原則禁止されています。
回答1件
0
ベストアンサー
このままだと WebContent/image ディレクトリのFileオブジェクトにファイルを書き込もうとしてしまうのでアクセスできません。
ファイルを出力するときは、ディレクトリを指定するのではなく、ファイルを指定します。
java
1uploadFile = new File(dirPath + "/" + item.getName());
投稿2018/02/27 06:10
総合スコア12011
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/27 06:24
変えましたが、構文が間違っている?エラーが出てきました。
ファイル指定をするということですのでもう少し検索してみます。
java.io.FileNotFoundException: C:\Users\s_kuroda\Desktop\Workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\VendingMachine\image\C:\Users\s_kuroda\Desktop\tool\image\apple.jpg (ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at org.apache.commons.fileupload.disk.DiskFileItem.write(DiskFileItem.java:416)
at drinkMachine.add.AddController.doPost(AddController.java:72)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
2018/02/28 04:31
アップロードしたときに、ブラウザによっては完全パスの情報が入りますので、item.getName() で取得したファイルにパス区切り文字が入っていた場合は、パス文字の最後のところからの値のみをファイル名としたほうが良いでしょう。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。