Я видел много решений этой проблемы, но ни одно из них не сработало, дело в том, что я развернул простой привет мир в облаке Google, и все прошло хорошо с сервлетами и .html-страницами, но когда дело касается .jsp-страниц, сервер не могу загрузить его и выдать исключение (хотя страницы .jsp работают нормально локально).
решения, которые я попробовал:
- с использованием JDK вместо JRE (я изменил системную библиотеку JRE в пути сборки проекта).
- попытался установить уровень компилятора на 1,7, но обнаружил, что движок приложения заставляет вас использовать 1,8.
- попытался добавить файлы .jsp в файл web.xml вручную.
- пытался поместить страницу индекса как .jsp и тоже не работал, в настоящее время единственный файл .jsp называется mua.jsp
- наконец-то я заставил моего друга развернуть проект hello world с базовым файлом jsp (также называемым mua) на своем macbook в том же проекте в облаке и тоже не работал.
что я имею в виду под "не работает", так это то, что страница не загружалась, а вместо этого показала ошибку 500.
Что делает ситуацию действительно странной, так это то, что при последних нескольких развертываниях от моего друга ошибка была изменена на 404 без исключения.
исключение:
javax.servlet.UnavailableException: ошибка загрузки класса для владельца
муа @ 1a7b9 == org.apache.jsp.mua_jsp, JSP = / mua.jsp, порядок = -1, инст = ложь,
javax.servlet.UnavailableException: ошибка загрузки класса для владельца
org.apache.jsp.mua_jsp @ 918a9ac4 == org.apache.jsp.mua_jsp, JSP = нуль, порядок = -1, инст = ложь,
javax.servlet.UnavailableException: ошибка загрузки класса для владельца
org.apache.jsp.mua_jsp @ 918a9ac4 == org.apache.jsp.mua_jsp, JSP = нуль, порядок = -1, инст = ложь,
javax.servlet.UnavailableException: ошибка загрузки класса для владельца
mua @ 1a7b9 == org.apache.jsp.mua_jsp, jsp = / mua.jsp, order = -1, inst = false] в
org.eclipse.jetty.servlet.ServletHandler.initialize
(ServletHandler.java:863) в
org.eclipse.jetty.servlet.ServletContextHandler.startContext
(ServletContextHandler.java:349) в
org.eclipse.jetty.webapp.WebAppContext.startWebapp
(WebAppContext.java:1406) в
com.google.apphosting.runtime.jetty9.AppEngineWebAppContext.startWebapp
(AppEngineWebAppContext.java:159) в
org.eclipse.jetty.webapp.WebAppContext.startContext
(WebAppContext.java:1368) в
org.eclipse.jetty.server.handler.ContextHandler.doStart
(ContextHandler.java:778) в
org.eclipse.jetty.servlet.ServletContextHandler.doStart
(ServletContextHandler.java:262) в
org.eclipse.jetty.webapp.WebAppContext.doStart
(WebAppContext.java:522) в
com.google.apphosting.runtime.jetty9.AppEngineWebAppContext.doStart
(AppEngineWebAppContext.java:116) в
org.eclipse.jetty.util.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:68) в
com.google.apphosting.runtime.jetty9.AppVersionHandlerMap.createHandler
(AppVersionHandlerMap.java:244) в
com.google.apphosting.runtime.jetty9.AppVersionHandlerMap.getHandler
(AppVersionHandlerMap.java:182) в
com.google.apphosting.runtime.jetty9.JettyServletEngineAdapter.serviceRequest
(JettyServletEngineAdapter.java:109) в
com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.dispatchServletRequest
(JavaRuntime.java:693) в
com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.dispatchRequest
(JavaRuntime.java:655) в
com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.run
(JavaRuntime.java:625) в
com.google.apphosting.runtime.JavaRuntime $ NullSandboxRequestRunnable.run
(JavaRuntime.java:819) в
com.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run
(ThreadGroupPool.java:274) в java.lang.Thread.run (Thread.java:745)