0

フォームを送信するたびに、JSPからJavaクラスメソッドを呼び出したいと思います。私のJSPファイルにはファイルタグがあります。ユーザーは自分のローカルマシンからファイルを参照します。そして、[送信]をクリックします。このファイルオブジェクトは、ビジネスロジックを使用するJavaクラスで使用できる必要があります。

これは支柱を使用せずに可能ですか?

<s:form action="**direct call to Action method here**" method="post" enctype="multipart/form-data" >
<s:file name="userImage" label="User Image" /><s:submit />

これを行う方法を手伝ってください。

ありがとう。

4

1 に答える 1

0

アクション属性の値はURLである必要があります。指定されたURLは、フォームが送信されたときにフォームからのデータが送信されるアドレスを指定します。

jspページで次のhtmlコードを使用します。

<form action="uploadFile" method="post"
                    enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" value="Upload file" />

ファイルへのファイルのロードを担当するサーブレットのマッピングを定義しweb.xmlます。

 <servlet>
    <servlet-name>UploadServlet</servlet-name>
    <servlet-class>package.UploadServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>UploadServlet</servlet-name>
    <url-pattern>/uploadFile</url-pattern>
</servlet-mapping>

そして、ビジネスロジックからメソッドを呼び出す特定のサーブレットにメソッドdoPostを実装します。

protected void doPost(HttpServletRequest request, HttpServletResponse response) {
    yourMethod();
}

actionアプリケーションでJSPのみを使用している場合は、属性に任意のJSPページを指定できます。

<form action="upload_file.jsp" method="post" enctype="multipart/form-data">

この場合、このページはファイルのアップロードリクエストを処理します。

于 2012-08-09T10:39:27.613 に答える