上傳 PNG/JPG 正常,GIF 變靜態,排查三步走:
// Action 中
File upload; String uploadFileName;
public String execute() {
// 1. Struts2 默認保存到臨時目錄 (request.getAttribute("upload"))
// 2. 複製到目標目錄
FileUtils.copyFile(upload, new File(savePath, uploadFileName));
// 3. 是否調用了圖片處理庫 (ImageIO/Thumbnailator/Imgscalr) 重寫?
// BufferedImage img = ImageIO.read(upload); // ImageIO 不支持寫入多幀 GIF!
// ImageIO.write(img, "gif", out); // 只寫第一幀 → 靜態
}
核心教訓:**Java ImageIO 不支持寫入動畫 GIF**,任何經過 `ImageIO.write` 的 GIF 必變靜態。