NoClassDefFoundError после развертывания проекта в Glassfish с использованием внешней библиотеки

Вероятно, у меня возникли проблемы с правильным добавлением java-библиотек в мой проект Java EE. Я использую Intellij Idea IDE.

Я хочу использовать внешнюю библиотеку в своем проекте (apache jena), и я добавил эту библиотеку, используя следующую процедуру: Структура проекта> Модули> Зависимости> Добавить JAR или каталоги> Выберите каталог apache jena lib (внутри есть несколько файлов .jar , как ядро ​​..).

В проекте вроде все ок - импорт, определения объектов.. Но после деплоя на локальном сервере Glassfish и после посещения страницы индекса я получил NoClassDefFoundError (именно java.lang.NoClassDefFoundError: org/apache/jena/rdf/model /МодельФабрика).

package controller;


import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import org.apache.jena.rdf.model.*;


@WebServlet( name = "TestController", urlPatterns = {"/"})
public class TestController extends HttpServlet {

    /**
     * Processes requests for both HTTP <code>GET and POST methods.
     * @param request servlet request
     * @param response servlet response
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        /* ERROR >> */
        Model model = ModelFactory.createDefaultModel();
        /* << ERROR */

        request.setAttribute("test", "test");
        request.getRequestDispatcher("test.jsp").forward(request,response);
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

}

Так может ли кто-нибудь посоветовать мне, как это решить, пожалуйста? Спасибо!


person Crylvarrey    schedule 27.10.2015    source источник
comment
Вы должны использовать maven, тогда у вас не будет этой конкретной проблемы   -  person Software Engineer    schedule 27.10.2015


Ответы (1)


Проблема решена: мне пришлось добавить библиотеку в артефакт (взорвалась война).

Процедура: Структура проекта> Артефакты> и было уведомление об отсутствующей библиотеке в этом артефакте, поэтому я нажал «Исправить (добавить эту библиотеку в артефакт)»> применить и Готово :)

Intellij ИДЕЯ v14.1.5

person Crylvarrey    schedule 27.10.2015