Справка Eclipse приложения RAP 2.0 не работает с WebSphere 8.5.5.0

проблема

Насколько я понимаю, в RAP каждый запрос сервлета должен проходить через мост сервлета Equinox. Это включает в себя страницы справки, которые являются файлами JSP внутри плагина org.eclipse.help.webapp.

У меня есть следующее сопоставление сервлетов в Web.xml:

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

Если я разверну свое приложение в веб-сфере, я не смогу открыть справку и получу эту ошибку:

Кажется, что WebSphere просто игнорирует мою волю, что я хочу обработать даже URL-адрес "/index.jsp" с сервлетом равноденствия.

Уже пробовал

Я попробовал настраиваемое свойство web-контейнера com.ibm.ws.webcontainer.enableJspMappingOverride, но это не помогло.

В документации указано:

Когда шаблон url определен в jsp-property-group файла web.xml, он обычно отображается и обрабатывается механизмом JavaServer Page (JSP). Если у вас есть приложения, которые должны переопределить это отображение, чтобы они могли обрабатывать и обслуживать контент JSP самостоятельно, установите для свойства com.ibm.ws.webcontainer.enableJspMappingOverride значение true.

Я также добавил следующий фрагмент в веб-XML, но это также не помогло:

  <jsp-config>
    <jsp-property-group>
        <description>Enables using help webapp JSP pages with Websphere</description>
        <url-pattern>*.jsp</url-pattern>
    </jsp-property-group>
  </jsp-config>

Есть ли у вас какие-либо идеи, как заставить WebSphere оставлять мои запросы только с URL-адресами *.jsp и позволить мосту равноденствия выполнять свою работу?

1 ответ

Решение

Кажется, что пользовательское свойство необходимо, но недостаточно. Мне нужно дополнительное отображение сервлета, как описано здесь.

Таким образом, отображение должно выглядеть так:

  <servlet-mapping>
    <servlet-name>equinoxbridgeservlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>equinoxbridgeservlet</servlet-name>
    <url-pattern>*.jsp</url-pattern>
  </servlet-mapping>
Другие вопросы по тегам