Неизвестный пакет, основные ошибки - PullRequest
0 голосов
/ 02 мая 2018

Кажется, это очень простая проблема, но я не понимаю. Я пытаюсь компьютеризировать хранилище / инвентарь с помощью Java EE, JSP и tomcat (я, кстати, француз, извините заранее за языковые ошибки)

Что я пытался сделать здесь:

У меня есть файл Excel (.xls), который выполняет роль базы данных. Я читаю файл .xls и определяю для каждой строки объект («Outil» по переводу это «Инструмент»), как вы можете видеть в «CommandeOutils.java» ( "/WEB-INF/classes/pac/cmd").

package pac.cmd;

import javax.servlet.http.HttpServletRequest;

import java.io.FileInputStream;
import java.io.FileOutputStream;

import org.apache.poi.ss.usermodel.*;
import pac.bdd.beans.Outil;

/**CommandeOutils.java*/
public class CommandeOutils implements Commande
{
private final String next;

private static FileOutputStream fos;
private static Row              row;
private static Cell             cell;
public static Outil[]           outil;

public CommandeOutils(String next) {
    this.next = next;
}

public String execute(HttpServletRequest req) throws Exception
{
    FileInputStream fis = new FileInputStream("C:\\Users\\lomoc\\Desktop\\INVENTAIRE_NOUVEAU_OUTILLAGE.xls");
    Workbook wb = WorkbookFactory.create(fis);
    Sheet sh = wb.getSheet("listing");
    int noOfRows = sh.getLastRowNum();
    for (int i = 1; i < noOfRows; i++)
    {
        if (sh.getRow(i) == null)
        {
            break;
        }
        outil[i] = new Outil(sh.getRow(i).getCell(0).getStringCellValue(), (sh.getRow(i).getCell(1).getStringCellValue()),
                sh.getRow(i).getCell(2).getStringCellValue(), sh.getRow(i).getCell(3).getStringCellValue(),
                sh.getRow(i).getCell(4).getStringCellValue(), sh.getRow(i).getCell(5).getDateCellValue(),
                sh.getRow(i).getCell(6).getDateCellValue(), sh.getRow(i).getCell(7).getBooleanCellValue(),
                sh.getRow(i).getCell(8).getBooleanCellValue(), sh.getRow(i).getCell(9).getDateCellValue(),
                sh.getRow(i).getCell(10).getDateCellValue(), sh.getRow(i).getCell(11).getStringCellValue(),
                sh.getRow(i).getCell(12).getStringCellValue(), sh.getRow(i).getCell(13).getStringCellValue(),
                sh.getRow(i).getCell(14).getStringCellValue(), sh.getRow(i).getCell(15).getDateCellValue(),
                sh.getRow(i).getCell(16).getBooleanCellValue(), sh.getRow(i).getCell(17).getBooleanCellValue());
    }

    req.setCharacterEncoding("UTF-8");
    req.getServletContext().getRequestDispatcher( "/WEB-INF/outils.jsp" );
    return next;
}

}

Мой объект "Outil" определен в классе "Outil" ("/WEB-INF/classes/pac/bdd/beans").

package pac.bdd.beans;

import java.util.Date;

public class Outil
{
    private String  designation;
    private String  numInterne;
    private String  numSerie;
    private String  marque;
    private String  classement;
    private Date    dateAchat;
    private Date    dateFinDeVie;
    private boolean verifInterne;
    private boolean verifExterne;
    private Date    derniereVerification;
    private Date    prochaineVerification;
    private String  observation;
    private String  utilisateur;
    private String  dateSortie;
    private String  utilisateurPrecedent;
    private Date    dateRetour;
    private boolean conforme;
    private boolean nonConforme;

    public Outil(String designation, String numInterne, String numSerie, String marque,
                 String classement, Date dateAchat, Date dateFinDeVie, boolean verifInterne,
                 boolean verifExterne, Date derniereVerification, Date prochaineVerification,
                 String observation, String utilisateur, String dateSortie, String utilisateurPrecedent,
                 Date dateRetour, boolean conforme, boolean nonConforme)
    {
        this.designation = designation;
        this.numInterne = numInterne;
        this.numSerie = numSerie;
        this.marque = marque;
        this.classement = classement;
        this.dateAchat = dateAchat;
        this.dateFinDeVie = dateFinDeVie;
        this.verifInterne = verifInterne;
        this.verifExterne = verifExterne;
        this.derniereVerification = derniereVerification;
        this.prochaineVerification = prochaineVerification;
        this.observation = observation;
        this.utilisateur = utilisateur;
        this.dateSortie = dateSortie;
        this.utilisateurPrecedent = utilisateurPrecedent;
        this.dateRetour = dateRetour;
        this.conforme = conforme;
        this.nonConforme = nonConforme;
    }

    /*Hidden Getters & Setters*/
}

В "outils.jsp" я просто печатаю for (int i = 0; i < CommandeOutils.outil.length; i++) в таблице с примером для элемента out.println("<li>" + CommandeOutils.outil[i].getDesignation() + "</li>");

Я компилирую вручную, (тот же результат, если я перекомпилирую с Intellij Idea), и я получил это, я уже читал красные темы об этой проблеме, я пробовал много вещей и не понимаю, я не знаю, если это проблема компиляции, проблема пакета, дерево папок, импорт ...

    C:\Users\lomoc\Cours\S4\JSP\webapps\V4_2\WEB-INF>javac classes\pac\cmd\*.java
classes\pac\cmd\CommandeOutils.java:9: error: package pac.bdd.beans does not exist
import pac.bdd.beans.Outil;
^
classes\pac\cmd\CommandeOutils.java:19: error: cannot find symbol
public static Outil[] outil;
^
symbol:   class Outil
location: class CommandeOutils
classes\pac\cmd\CommandeOutils.java:37: error: cannot find symbol
outil[i] = new Outil(sh.getRow(i).getCell(0).getStringCellValue(),
(sh.getRow(i).getCell(1).getStringCellValue()),
^
symbol:   class Outil
location: class CommandeOutils
3 errors

Спасибо заранее

1 Ответ

0 голосов
/ 02 мая 2018

Я мог видеть, что вы только компилируете файлы java в папке classes\pac\cmd\*.java, это только компилирует файлы и не компилирует расположение файлов java pac\bdd\beans\.

Вам нужно сначала скомпилировать местоположение java-файлов pac\bdd\beans\, потому что ваш класс зависит от другого класса, который в этом пакете позже, попробуйте скомпилировать java-файлы в classes\pac\cmd\ расположении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...