Загрузка файла JSF 1.2
Я использую функцию загрузки файлов томагавка в моем JSF 1.2, используя тег "t:inputFileUpload". Но кажется, что Томагавк не совместим с JSF 1.2, и он работает только с JSF 2.0 и выше.
Может кто-нибудь это подтвердить. Также было бы здорово, если бы кто-то дал указатель, как использовать загрузку файлов в JSF 1.2. Я не хочу использовать RichFaces "rich:fileUpload", так как это слишком сложно. Я просто хочу простое поле fileInput и кнопку обзора рядом с ним.
3 ответа
Но кажется, что Томагавк не совместим с JSF 1.2, и он работает только с JSF 2.0 и выше.
Это неправда. Томагавк существовал почти столько же, сколько и сам JSF. Это также доступно в версии, совместимой с JSF 1.2.
Очевидно, вы загрузили Томагавк для JSF 2.0 вместо Томагавк для JSF 1.2. У Томагавка, по общему признанию, очень запутанные номера версий. Он использует абсолютно одинаковый номер версии 1.1.x для версий JSF 1.2 и 2.0.
Начиная со страницы загрузки Tomahawk, вы должны загрузить для JSF 1.2 версию, которая указана ниже:
Томагавк MyFaces 1.1.14 для JSF 1.2 (zip) tomahawk12-1.1.14-bin.zip
и, следовательно, не версия, которая указана ниже:
Томагавк MyFaces 1.1.14 для JSF 2.0 (zip) tomahawk20-1.1.14-bin.zip
Более подробный ответ о том, как его настроить, см. Также в разделе " Загрузка файлов с помощью JSF (1.2)".
Загрузка файла Richfaces достаточно хороша. Его представление может быть изменено путем переопределения соответствующих стилей, см. Ссылку на тег, Таблица 6.183 и ниже.
У tomahawk lib нет проблем с jsf 1.2, например для тега загрузки файла,
<h:form id="uploadForm" name="uploadForm" enctype="multipart/form-data">
<table>
<tr>
<h:outputText for="photo" value="Select File: " />
<t:inputFileUpload storage="file" size="40" id="photo" value="#{patientsBackingBean.patientPhoto}"/>
<h:message for="photo" style="color: red;" />
</tr>
</table>
</h:form>
Вот patientPhoto
должен объявить как UploadedFile
в бобе.