게임 응용 프로그램이 있습니다. 서버 쪽에서 이미지 크기를 조정할 때 play-res 및 play-scalr 라이브러리를 사용하고 있습니다. 이미지 파일로 여러 부분으로 양식을 제출할 때. 서버 측에서 나는 Mac에서만 Windows 시스템에 예외를 따르지 않습니다.Windows에서 apche 공유 파일 이동 메서드가 실패합니다.
스택 추적
Caused by: java.io.IOException: Failed to delete original file 'E:\tmp\multipartBody677849053220396275asTemporaryFile' after copy to 'E:\work\projects\rismus\res\profile\268d\3a0d\268d3a0d9a36e7cc8b826b274de4aaa47fdc6591.jpg'
at org.apache.commons.io.FileUtils.moveFile(FileUtils.java:2835) ~[commons-io.jar:2.4]
at se.digiplant.res.api.Res$.put(Res.scala:81) ~[play-res_2.10-1.0.1.jar:1.0.1]
at se.digiplant.res.api.Res$.put(Res.scala:117) ~[play-res_2.10-1.0.1.jar:1.0.1]
at controllers.ImageUploader$$anonfun$upload$2$$anonfun$apply$1$$anonfun$apply$2$$anonfun$1.apply(ImageUploader.scala:37) ~[na:na]
at controllers.ImageUploader$$anonfun$upload$2$$anonfun$apply$1$$anonfun$apply$2$$anonfun$1.apply(ImageUploader.scala:36) ~[na:na]
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na]
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na]
at scala.collection.immutable.List.foreach(List.scala:318) ~[scala-library.jar:na]
at scala.collection.TraversableLike$class.map(TraversableLike.scala:244) ~[scala-library.jar:na]
at scala.collection.AbstractTraversable.map(Traversable.scala:105) ~[scala-library.jar:na]
at controllers.ImageUploader$$anonfun$upload$2$$anonfun$apply$1$$anonfun$apply$2.apply(ImageUploader.scala:36) ~[na:na]
at controllers.ImageUploader$$anonfun$upload$2$$anonfun$apply$1$$anonfun$apply$2.apply(ImageUploader.scala:26) ~[na:na]
at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24) ~[scala-library.jar:na]
at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24) ~[scala-library.jar:na]
at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42) ~[akka-actor_2.10.jar:2.2.0]
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386) ~[akka-actor_2.10.jar:2.2.0]
... 4 common frames omitted
그것은 문제를 이해하기 위해 더 많은 정보를 요구하는 경우 알려주세요.
편집 : 그들은 열려 삭제할 수 없습니다 동안 업로드 기능
def upload(accountId: Long): EssentialAction = Authenticated(
account => Action.async(parse.multipartFormData) { request => Future {
if (account.id != accountId) Results.Unauthorized
else {
if (request.body.files.filter(f => !checkFileType(f)).length > 0) {
BadRequest("Unsupported file type")
} else {
val assets = request.body.files.map { file =>
val assetId = Res.put(file, source, Seq.empty) //fails here
Map("asset_id" -> assetId, "mime" -> file.contentType.get)
}
if (assets.length == 0) BadRequest("No Images uploaded")
DB.withConnection { implicit c =>
assets.foreach { asset =>
Accounts.updatePicture(accountId, asset("asset_id"))
}
}
Ok(Json.toJson(assets))
}
}
}
},
failedResult = Results.Unauthorized
)
안녕하세요! 나는 플레이 레스와 플레이 스 래러의 창안자입니다. 미안하지만 이걸 테스트 할 창문이 없어요. 무거운 짐을 싣기 위해 아파치 커먼즈를 사용하고 있기 때문에 파일 복사가 진행중이므로 버그가있는 것처럼 보입니다. 내가 멀리 갈 수 있도록 할 수있는 일이 있다면 알려주지. :) –