В настоящее время Jetty встроен в приложение. Сервер Jetty запускается, и я могу видеть файлы в проекте, однако, когда я попытке просмотреть JSP файл, он говоритВстроенная поддержка веб-сервера встроенного сервера JSP
HTTP ERROR 500
Проблема доступа /web/index.jsp. Причина:
поддержки JSP не настроена
Я прочитал некоторые другие посты здесь и некоторые учебники онлайн и большинство из них говорит о start.jar и мавенны. Я не использую ни один из них, я просто использую встроенное в eclipse.
У меня есть три класса
AppContextBuilder
public class AppContextBuilder
{
private WebAppContext webAppContext;
public WebAppContext buildWebAppContext()
{
webAppContext = new WebAppContext();
webAppContext.setDescriptor(webAppContext + "/WEB-INF/web.xml");
webAppContext.setResourceBase(".");
webAppContext.setContextPath("/");
return webAppContext;
}
JettyServer
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
public class JettyServer
{
private Server server;
public JettyServer()
{
this(8585);
}
public JettyServer(Integer runningPort)
{
server = new Server(runningPort);
}
public void setHandler(ContextHandlerCollection contexts)
{
server.setHandler(contexts);
}
public void start() throws Exception
{
server.start();
}
public void stop() throws Exception
{
server.stop();
server.join();
}
public boolean isStarted()
{
return server.isStarted();
}
public boolean isStopped()
{
return server.isStopped();
}
}
ServerControl
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
public class ServerControl
{
public static void main(String[] args)
{
Logger.getLogger().logMethodEntryMessage();
ContextHandlerCollection contexts = new ContextHandlerCollection();
contexts.setHandlers(new Handler[]
{ new AppContextBuilder().buildWebAppContext() });
final JettyServer jettyServer = new JettyServer();
jettyServer.setHandler(contexts);
start(jettyServer);
Logger.getLogger().logMethodExitMessage();
}
private static void start(final JettyServer jettyServer)
{
Logger.getLogger().logMethodEntryMessage();
try
{
jettyServer.start();
Logger.getLogger().debug("Jetty server started!");
}
catch(Exception e)
{
Logger.getLogger().error(e.getMessage());
}
Logger.getLogger().logMethodExitMessage();
}
}
Я никогда не пытался использовать причал, встроенный раньше, чтобы у меня что-то не хватало. Я последовал за this учебником онлайн, хотя, похоже, для них это работает.
Любая помощь была бы замечательной, спасибо!
Знаете ли вы, почему этому учебнику не нужно ничего делать, но они смогли просмотреть JSP? – FMC
Этот урок, который вы связали, не будет работать как есть, и комментарии на этой связанной странице также показывают, что это так. –
Спасибо за помощь. Я смог его решить :) – FMC