1

struts2 fileUpload インターセプタを使用して、Web アプリケーションにファイル アップロード プロセスを実装しようとしています。以下は私のコードです

index.jsp

<tags:form action="fileUpload" method="post" enctype="multipart/form-data">
   <tags:file name="fileUpload" label="Choose File"/>
   <tags:submit value="Upload"/>     
</tags:form> 

struts.xml

<action name="fileUpload" class="com.hibernate.action.FileUploadAction">
    <interceptor-ref name="fileUploadStack"/>
    <interceptor-ref name="fileUpload">
        <param name="maximumSize">1024000</param>
        <param name="allowedTypes">application/pdf</param>
    </interceptor-ref>
    <result name="success">/viewChapters.jsp</result>
</action>

FileUploadAction.java

public class FileUploadAction extends ActionSupport
{
private File fileUpload;
private String contentType;
private String fileName;
private String destPath;
/// setter and getter methods
 public String execute()
{
    destPath="C:\\WebPortal_testing";
    try
    {
        System.out.println("Source File Name:"+fileUpload);
        System.out.println("Destination File Name:"+fileName);

        File destFile= new File(destPath,fileName);
        FileUtils.copyFile(fileUpload, destFile);
    }
    catch(IOException exception)
    {
        exception.printStackTrace();
        return ERROR;
    }
    return SUCCESS;
 }

index.jsp ページで pdf ファイルを選択してアップロード ボタンをクリックすると、アクション クラスの fileUpload フィールドに null 値が与えられます。

アプリケーションをデバッグモードで実行していて、これを与えました

System.out.println("Source File Name:"+fileUpload);

それが何を返しているかを確認するために、私はnullになっています。

4

1 に答える 1