Я новичок в Java, так что терпите меня.
Я только что добавил ссылку на гораздо больший проект, заставил его работать, чтобы открыть файл PDF.
Вот раздел в jsp для ссылки -
<li class="dropdown-item dropdown-submenu">
<a class="sub dropdown-item pr-1" tabindex="-1" href="#">Help Menu</a>
<ul class="dropdown-menu" id="helpMenu">
<li id="setupItemOne"><a class="dropdown-item" tabindex="-1" href='<s:url action="downloadPdfAction"><s:param name="reqGuid" value="%{reqGuid}"/></s:url>'><span class='fa fa-info-circle pr-1'></span> How To Set Up Item One</a></li>
</ul>
</li>
Я создал DownloadPdfAction.java, а вот фрагмент кода из того, что вызывает файл .pdf -
public class DownloadPdfAction extends ActionSupport implements SessionAware, LoginRequired {
static Logger logger = LogManager.getLogger(DownloadPdfAction.class);
private Map<String, Object> sessionMap;
private String reqGuid;
private InputStream fileInputStream;
public InputStream getFileInputStream() {
return fileInputStream;
}
public String execute() throws Exception {
try {
fileInputStream = new FileInputStream(new File("/web_apps/server/external/Item_One_Installation.pdf"));
return SUCCESS;
} catch (Exception e) {
logger.error(e.getMessage());
return ERROR;
}
}
Работает нормально.Теперь мне нужно добавить несколько других ссылок, указывающих на другие файлы .pdf в том же месте.Вместо того, чтобы создавать новую страницу action.java для каждой ссылки, есть ли у меня способ выбрать имя файла .pdf для «нового файла» в зависимости от того, какая ссылка была нажата, и поместить этот файл в имя переменной для FileInputStream в DownloadPdfAction..Джава?Все файлы .pdf находятся в одном каталоге.