0

ファイルをアップロードし、名前に基づいて特定の場所に保存する必要があります。次のコードを使用していますが、名前に基づいて保存する方法がわかりません。現在、次のエラーが表示されます。

SEVERE: Exception occurred during processing request: null
java.lang.NullPointerException

JSP

    <s:form method="POST" enctype="multipart/form-data" autocomplete="on" 
             action="myforms">
                       .......
                   <s:textfield name="Name" label="Name"/>
                    <s:file name="logo" label="Upload Logo" size="40"/>
        <s:submit validate="true"></s:submit>

アクション

 @Action
 public class MyFormHandler implements ModelDriven{
  private FormData formData;
  private File logo;

  public String myforms(){
     System.out.println(formData.getName());   // << it works
     System.out.println("file name:" + logo.getName());   << Error
  }

   public File getLogo() {
    return logo;
}

public void setLogo(File logo) {
    this.logo = logo;
}

   ......
 } 
4

1 に答える 1

1

あなたが示すコードは、それ自体では意味がありません。アップロードされたファイルはFile logo(適切なゲッター/セッターなどを想定して)にあり、何が何でFormDataあるかわかりません。

あなたの最善の策は、アップロードされたファイルをその名前に基づいて任意のディレクトリにコピーすることですが、詳細な情報がなければ、あなたのケースで何が問題になっているのかを簡単に確認することはできません.

于 2013-02-20T01:47:19.217 に答える