Как указать путь до JSP?

Понимаю что тут мало вероятно ответят большинство ответов на тему html css js да и php( Но малоли вот ru.stackoverflow.com/questions/487393/%D0%9A%D0%B0...
  • Вопрос задан
  • 815 просмотров
Пригласить эксперта
Ответы на вопрос 2
@goshan_p
Смотря, что вы используете. Если Spring то в конфигурации указывается префикс и суффикс. А в контроллере лишь имя представления. Если Java EE, то в web.xml . Судя по проекту на скриншоте. Вам нужно создать web.xml и правильно организовать структуру проекта.
Ответ написан
@bromzh
Drugs-driven development
Что за помойка в проекте? Изучи мавен, посмотри какая структура у стандартного мавеновского проекта.
Если используешь Jetty, то можно так (при условии, что структура проекта у тебя нормальная, а не как щас):
1) Создай в папке src/main/resources папку, с именем webapp, например
2)
// Application.java
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;

import javax.servlet.Servlet;

class Application implements Runnable {
    Server server;
    ServletContextHandler handler;

    public Application() {
        server = new Server(8080);
        handler = new ServletContextHandler(ServletContextHandler.SESSIONS);
        server.setHandler(handler);
    }

    @Override
    void run() {
        try {
            server.start();
            server.join();
        } finally {
            server.destroy();
        }
    }

    void addServlet(String path, Servlet servlet) {
        handler.addServlet(new ServletHolder(servlet), path);
    }

    void addServlet(String path, Class<? extends Servlet> servletClass) {
        handler.addServlet(new ServletHolder(servletClass), path);
    }
}

// Main.java
import org.eclipse.jetty.servlet.DefaultServlet;

public class Main {
    public static void main(String args[]) {
        Application app = new Application();

        app.handler.setContextPath("/");
        app.handler.setResourceBase(Main.class.classLoader.getResource("webapp").toExternalForm());

        app.handler.addServlet("/*", DefaultServlet.class);
        app.handler.addServlet("/api/v1/*", JerseyServlet.class);
        app.handler.addServlet("/ws/*", WSServlet.class);

        app.run();
    }
}

3) Собирай всё в jar-ник, в манифесте пропиши главный файл. Вообще, я собирал всё это градлом с плагином application:
apply plugin:'application'
...
mainClassName = "your.package.app.Main"

PS код был на Groovy, я переписал, но мб где-то мог накосячить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы