Как изменить контекст REST, сгенерированный enunciate?

У меня есть следующая аннотация в моем коде RESTEasy:

@Path("/v1/authenticateService")

Enunciate генерирует "точку монтирования" в документации как:

/rest/v1/authenticateService/authenticate

Я попытался использовать следующее в моем enunciate.xml, чтобы переопределить контекст "/rest":

<services>
    <rest defaultRestSubcontext="/gateway-service-access-pox" />
</services>

Я также попробовал следующее, но ничего не сделало:

<deployment protocol="https" host="(host)" context="/gateway-service-access-pox" />

Я использую enunciate 1.23 для создания документов для многомодульного проекта Maven 3.

Вот что написано в консоли:

[INFO] --- maven-site-plugin:3.0:site (default-cli) @ gateway-service-access-pox ---
[INFO] configuring report plugin org.apache.maven.plugins:maven-project-info-reports-plugin:2.4
[INFO] configuring report plugin org.codehaus.enunciate:maven-enunciate-plugin:1.23
[WARNING] No project URL defined - decoration links will not be relativized!
[INFO] Rendering site with org.apache.maven.skins:maven-default-skin:jar:1.0 skin.
[INFO] Generating "About" report    --- maven-project-info-reports-plugin:2.4
[INFO] Generating "Web Service API" report    --- maven-enunciate-plugin:1.23
[INFO] initializing enunciate.
[INFO] invoking enunciate:generate step...
[INFO] invoking enunciate:compile step...
[INFO] invoking enunciate:build step...
[INFO] closing enunciate.

Есть идеи, что я делаю не так?

Подробнее... Полный enunciate.xml (в случае, если существует проблема, влияющая на запись:

<?xml version="1.0"?>
<enunciate label="platform-gateway-api" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://enunciate.codehaus.org/schemas/enunciate-1.23.xsd">

<api-import pattern="com.intuit.platform.gateway.common.DetailedResponse" />
<api-import pattern="com.intuit.platform.gateway.service.access.domain.*" />
<api-import pattern="com.intuit.platform.gateway.service.identity.domain.Identity" />

<deployment protocol="https" host="(host)" context="/gateway-service-access-pox" />

<namespaces>
    <namespace uri="http://schema.intuit.com/platform/integration/detailedResponse/v1" id="common" />
    <namespace uri="http://schema.intuit.com/platform/identity/user/v1" id="user" />
    <namespace uri="http://schema.intuit.com/platform/access/token/v1" id="token" />
</namespaces>

<services>
    <rest defaultRestSubcontext="/gateway-service-access-pox" />
</services>

<modules>
    <!-- Docs -->
    <docs splashPackage="com.intuit.platform.gateway.service.ticket.api" title="Platform Gateway Access API"
        copyright="Intuit Inc">
        <download name="License" file="LICENSE.txt" description="The license file governing the use of this API." />
    </docs>
    <!-- Disable all the client generation tools -->
    <basic-app disabled="true" />
    <c disabled="true" />
    <csharp disabled="true" />
    <java-client disabled="true" />
    <jaxws-client disabled="true" />
    <jaxws-ri disabled="true" />
    <jaxws-support disabled="true" />
    <jersey disabled="true" />
    <obj-c disabled="true" />
    <xml disabled="true" />
</modules>
</enunciate>

Кстати, если есть лучший способ получить помощь по этому вопросу (какой-то форум ошибок), пожалуйста, дайте мне знать. Я новичок в enuncate и не знаю, была ли это ошибка или мое невежество.

2 ответа

Как сказал Райан, "defaultRestSubcontext" работает. Например, я использовал его таким образом, чтобы удалить "rest" из сгенерированной по умолчанию точки монтирования:

<услуги>

Если установить значение defaultRestSubcontext равным "/", генерация начинается с "/", а затем следует путь к конечной точке.

PS Я использую Enunciate 1.24

Ну... у меня есть пара дней, и наконец это работает, и точка монтирования имеет правильный подконтекст отдыха по умолчанию:)

2 Что я сделал, чтобы это сработало.

  1. включить модуль XML

    <xml disabled="false" />
    
  2. Добавьте enunciate-xml jar во время выполнения.

Я не знаю, почему это так, но сейчас это работает для меня.

Другие вопросы по тегам