Uncaught TypeError: this.jq.fileupload не является функцией в Prime Faces 4.0 при использовании mode = "advance" загрузчика файла ajax

Я использовал версию jsf 2.2.x и primefaces 4.0. Я также использовал версии jquery, такие как 1.10.1 и 2.1.4

<h:form id = "uploadForm" enctype = "multipart/form-data">
        <p:fileUpload fileUploadListener = "#{bean.handleFileUpload}"
                      mode = "advanced" dragDropSupport = "false"
                      update = "messages"
                      sizeLimit = "10000000"
                      fileLimit = "3"
                      allowTypes = "/(\.|/)(gif|jpe?g|png)$/" />

        <p:growl id = "messages" showDetail = "true" />
</h:form>

а также я использую заголовки, как показано ниже.

<h:head>
    <title><h:outputText value = "#{userBean.title}"/> - Dashboard</title>
    <meta http-equiv = "keywords" content = "xyz"/>
    <meta http-equiv = "description" content = "Dashboard"/>
    <meta http-equiv = "content-type" content = "text/html; charset=UTF-8"/>
</h:head>

Между тегами заголовка нет никаких других ссылок или тегов сценария. только теги стиля.

web.xml

<context-param>
    <param-name>primefaces.THEME</param-name>
    <param-value>bootstrap</param-value>
</context-param>
<context-param>
    <param-name>primefaces.UPLOADER</param-name>
    <param-value>commons</param-value>
</context-param>
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/</url-pattern>
</servlet-mapping>
<filter>
    <filter-name>PrimeFaces FileUpload Filter</filter-name>
    <filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
    <init-param>
        <param-name>thresholdSize</param-name>
        <param-value>51200</param-value>
    </init-param>
    <init-param>
        <param-name>uploadDirectory</param-name>
        <param-value>/tmp/</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>PrimeFaces FileUpload Filter</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
</filter-mapping>

Bean.java

@ManagedBean(name = "bean")
@ViewScoped
public class Bean {
    public void handleFileUpload(FileUploadEvent event) {
        System.out.println("invoked");
        FacesMessage message = new FacesMessage("Succesful", 
        event.getFile().getFileName() + " is uploaded.");
        FacesContext.getCurrentInstance().addMessage(null, message);
    }
}

приведенный выше код извлекается из всего кода. пожалуйста, помогите мне решить эту проблему. спасибо!

Работает, если еще добавить на страницу p:inputText? Или есть другие предыдущие ошибки?

Kukeltje 26.10.2018 08:57

да. Я также использую p:inputText. Он также успешно вызывает методы bean. но когда я использую p:fileUpload, он никогда не вызывал методы резервного bean-компонента, и файл не загружался куда-либо. в лог-файле ошибок нет

Vidurajith Darshana 26.10.2018 09:38

@Kukeltje, у вас есть идеи по этому поводу? Если у вас есть идеи, вы можете мне помочь?

Vidurajith Darshana 26.10.2018 11:40

Вы вручную включаете файл jquery js где-нибудь? И попробуйте сделать минимальный воспроизводимый пример и попробуйте (просто попробуйте) с минимальный воспроизводимый пример, если он работает с более новой версией PF.

Kukeltje 26.10.2018 12:01

Спасибо, парень ... Ты классный, и еще раз спасибо за эту идею. Теперь она отлично работает!

Vidurajith Darshana 26.10.2018 14:16
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
5
583
0

Другие вопросы по теме