Ceci est mon fichier Strut.Je veux télécharger un fichier pdf qui est stocké dans le dossier qui est dans WebContent du projet
<action name="sample" class="com.action.getPdf" method="getPdf">
<result name="success" type="stream">
<param name="inputName">fileInputStream</param>
<param name="contentType">application/pdf</param>
<param name="contentDisposition">attachment;filename="${fileName}"</param>
<param name="bufferSize">1024</param>
</result>
</action>
et ce code d'action est où l'objet de fichier devient null
.
public String getPdf()throws Exception
{
Session ss = HibernateUtils.getSess();
Transaction t=ss.beginTransaction();
HttpSession httpsession=request.getSession();
String path2=request.getParameter("path1");
ServletContext servletContext = ServletActionContext.getServletContext();
//String path3=servletContext.getRealPath(path2);
System.out.println("the relative path of the file is:"+path2);
try
{
File fileToDownload = new File(path2);
fileInputStream = new FileInputStream(fileToDownload);
}
catch (Exception e)
{
if (t!=null)
{
t.rollback();
e.printStackTrace();
}
}
finally
{
ss.close();
}
return "success";
}
J'ai stocké le fichier que je veux télécharger dans le dossier de contenu Web et j'ai stocké le chemin de celui-ci dans la base de données. Je ne sais pas quel est le problème.
Je reçois l'exception suivante –
java.lang.IllegalArgumentException: Impossible de trouver un java.io.InputStream avec le nom [inputStream] dans la pile d'invocation. Vérifiez la balise spécifiée pour cette action. –
Vous devriez avoir la méthode 'getFileInputStream()'. –