Развертывание файла RAP .war в пристани - PullRequest
0 голосов
/ 07 декабря 2018

Я создал приложение hello-world RAP, следуя обучающей программе eclipse.У меня нет проблем с запуском его в eclipse.

Теперь я хочу упаковать его в файл .war вместе с maven и развернуть на сервере Jetty.Это тот момент, когда я уже не уверен, что это правильный подход.Мой файл .war содержит все плагины RAP, равноденствия и maven, web.xml и config.ini.Я строю его с Tycho, но я открыт для других решений.

config.ini:

#Product Runtime Configuration File
osgi.bundles=RapHello/BasicEntryPoint@start,\
  org.eclipse.core.commands@start,\
  org.eclipse.core.jobs@start,\
  org.eclipse.equinox.common@start,\
  org.eclipse.equinox.console@start,\
  org.eclipse.equinox.ds@start,\
  org.eclipse.equinox.http.registry@start,\
  org.eclipse.equinox.servletbridge.extensionbundle,\
  org.eclipse.equinox.http.servlet@start,\
  org.eclipse.equinox.http.servletbridge@start,\
  org.eclipse.equinox.registry@start,\
  org.eclipse.equinox.servletbridge@start,\
  org.eclipse.equinox.util@start,\
  org.eclipse.osgi.services@start,\
  org.eclipse.rap.jface@start,\
  org.eclipse.rap.rwt@start,\
  org.eclipse.rap.rwt.osgi@start,\
  raphello.BasicEntryPoint@start
osgi.bundles.defaultStartLevel=4

web.xml (скопировано из другого образца .war):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app id="WebApp">
  <servlet id="bridge">  
    <servlet-name>equinoxbridgeservlet</servlet-name>
    <display-name>Equinox Bridge Servlet</display-name>
    <description>Equinox Bridge Servlet</description>
    <servlet-class>org.eclipse.equinox.servletbridge.BridgeServlet</servlet-class>

    <!-- Framework Controls could be useful for testing purpose, but
         we disable it per default -->
    <init-param>
      <param-name>enableFrameworkControls</param-name>
      <param-value>false</param-value>      
    </init-param>

    <!-- Enable multi-language support for the extension registry -->
    <!-- the OSGi console is useful for trouble shooting but will fill up your 
         appserver log quickly, so deactivate on production use. Uncomment
         the -console parameter to enabled OSGi console access.  -->
    <init-param>
      <param-name>commandline</param-name>
      <param-value>-registryMultiLanguage <!-- -console --></param-value>     
    </init-param>

    <load-on-startup>1</load-on-startup>    
  </servlet>

  <servlet-mapping>
    <servlet-name>equinoxbridgeservlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>

</web-app>

При развертывании файла на моем сервере Jetty я не получаю ошибок, и кажется, что файл был поднят, но все, что я получаю, это

HTTP ERROR 404
Problem accessing /hellorap. Reason:

  ProxyServlet: /hellorap

Я думаю, что перепробовал все возможныепути.До сих пор я читал, что путь должен быть именем файла моего .war, но это не сработает.

журнал запуска Jetty:

    INFO::main: Logging initialized @276ms to org.eclipse.jetty.util.log.StdErrLog
    INFO:oejs.Server:main: jetty-9.4.10.v20180503; built: 2018-05-03T15:56:21.710Z; git: daa59876e6f384329b122929e70a80934569428c; jvm 1.8.0_181-b13
    INFO:oejw.StandardDescriptorProcessor:main: NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet
    INFO:oejs.session:main: DefaultSessionIdManager workerName=node0
    INFO:oejs.session:main: No SessionScavenger set, using defaults
    INFO:oejs.session:main: node0 Scavenging every 600000ms
    INFO:oejsh.ContextHandler:main: Started o.e.j.w.WebAppContext@561b6512{/,file:///C:/Users/USR/AppData/Local/Temp/jetty-0.0.0.0-8081-raphello.war-_-any-511053963228532950.dir/webapp/,AVAILABLE}{webapps/raphello.war}
    INFO:oejs.AbstractConnector:main: Started ServerConnector@2898ac89{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
    INFO:oejs.Server:main: Started @4477ms

Итак, вопрос такой:Что я делаю неправильно?Это даже правильный подход?

Этот ответ , похоже, не работает, поэтому моя ошибка, вероятно, на более ранней стадии.

...