Primefaces fileupload не вызывает метод загрузкиJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Primefaces fileupload не вызывает метод загрузки

Сообщение Anonymous »

Я ожидаю, что метод загрузки PriceData будет вызываться, когда я нажимаю кнопку отправки, но
метод загрузки не вызывается во время вызова отправки.
Это единственный информационный вызов, который я получаю от Wildfly (WildFly 33.0.2.Final)
Я пытался получить помощь от ИИ, но безуспешно.
2024-09-28 18:46:33,634 INFO [com.example.PriceData] (default task-2) Submit button clicked. Prices: []

Вот мое тело xhtml:









Вот вспомогательный компонент:
package com.example;

import jakarta.enterprise.context.RequestScoped;
import jakarta.inject.Named;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;
import org.primefaces.event.FileUploadEvent;

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

@Named
@RequestScoped
public class PriceData {

private static final Logger LOGGER = Logger.getLogger(PriceData.class.getName());
private List
prices = new ArrayList();

public List getPrices() {
return prices;
}

public void upload(FileUploadEvent event) {
LOGGER.log(Level.INFO, "File uploaded: {0}", event.getFile().getFileName()); try (InputStream inputStream = event.getFile().getInputStream()) {
prices = parseCSV(inputStream);
LOGGER.log(Level.INFO, "Prices parsed: {0}", prices);
} catch (IOException e) {
LOGGER.log(Level.SEVERE, "Error uploading file", e);
prices = new ArrayList();
}
}

public void submit() {
LOGGER.log(Level.INFO, "Submit button clicked. Prices: {0}", prices);
}

private List parseCSV(InputStream inputStream) throws IOException {
List priceList = new ArrayList();
try (CSVParser parser = new CSVParser(new InputStreamReader(inputStream), CSVFormat.DEFAULT.withFirstRecordAsHeader())) {
for (CSVRecord record : parser) {
try {
double price = Double.parseDouble(record.get(1));
String date = record.get(0);
priceList.add(new Price(date, price));
} catch (NumberFormatException e) {
LOGGER.log(Level.WARNING, "Invalid price data: {0}", record);
}
}
}
return priceList;
}

public static class Price {
private String date;
private double price;

public Price(String date, double price) {
this.date = date;
this.price = price;
}

public String getDate() {
return date;
}

public double getPrice() {
return price;
}
}
}

Вот некоторые зависимости:

jakarta.platform
jakarta.jakartaee-api
10.0.0
provided


org.primefaces
primefaces
14.0.5
jakarta


Также здесь находится файл web.xml



Faces Servlet
jakarta.faces.webapp.FacesServlet
1


Faces Servlet
*.xhtml


jakarta.faces.PROJECT_STAGE
Development


primefaces.UPLOADER
auto


primefaces.CLIENT_SIDE_VALIDATION
true



primefaces.TRACE
true


index.xhtml




Подробнее здесь: https://stackoverflow.com/questions/790 ... oad-method
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»