Какая альтернатива доступна для замены мула и молы в веб-сервисе ниже? - PullRequest
0 голосов
/ 09 апреля 2019

Мне нужно покинуть мул и пристань / майку в моем веб-сервисе. Я ищу альтернативный способ реализации текущего кода.

Я запускаю службу вот так -

org.mule.MuleServer -config deploy_jetty_jersey.xml

deploy_jetty_jersey.xml

http://www.mulesource.org/schema/mule/jetty/2.2 http://www.mulesource.org/schema/mule/jetty/2.2/mule-jetty.xsd http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd http://www.mulesource.org/schema/mule/jersey/2.2 http://www.mulesource.org/schema/mule/jersey/2.2/mule-jersey.xsd http://www.mulesource.org/schema/mule/vm/2.2 http://www.mulesource.org/schema/mule/vm/2.2/mule-vm.xsd">

<jetty:connector name="httpConnector" useContinuations="true"
    configFile="jettyConfig.xml" />
<jetty:endpoint address="http://localhost:8080" name="serverEndpoint"
    path="html" synchronous="false" />

<model name="ServiceSample">
    <service name="testComponent">
        <inbound>
            <jetty:inbound-endpoint ref="serverEndpoint" />
        </inbound>
    </service>

    <service name="restTestHello" initialState="started">
        <inbound>
            <inbound-endpoint address="jersey:http://localhost:7003/rest"
                synchronous="true" />
        </inbound>
        <component>
            <singleton-object class="com.rest.RestResource" />
        </component>
    </service>
</model>

jettyConfig.xml

<Set name="handler">
    <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
        <Set name="handlers">
            <Array type="org.mortbay.jetty.Handler">
                <Item>
                    <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection" />
                </Item>
                <Item>
                    <New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler" />
                </Item>
                <Item>
                    <New id="StaticHandler" class="org.mortbay.jetty.handler.ResourceHandler" />
                </Item>
                <Item>
                    <New class="org.mortbay.jetty.handler.ContextHandler">
                        <Set name="contextPath">/</Set>
                        <Set name="resourceBase">
                            <SystemProperty name="jetty.home" default="." />
                            XXXXXX
                        </Set>
                        <Call name="addHandler">
                            <Arg>
                                <New class="org.mortbay.jetty.handler.ResourceHandler" />
                            </Arg>
                        </Call>
                    </New>
                </Item>
            </Array>
        </Set>
    </New>
</Set>
<Call name="addLifeCycle">
    <Arg>
        <New class="org.mortbay.jetty.deployer.WebAppDeployer">
            <Set name="contexts">
                <Ref id="Contexts" />
            </Set>
            <Set name="webAppDir">XXX</Set>
        </New>
    </Arg>
</Call>

<Set name="stopAtShutdown">true</Set>
<Set name="sendServerVersion">true</Set>
<Set name="sendDateHeader">true</Set>
<Set name="gracefulShutdown">1000</Set>

Мне нужно альтернативное программное обеспечение, которое использует аналогичную структуру XML, так что будет минимальное изменение Java.

1 Ответ

0 голосов
/ 27 апреля 2019

Очевидная альтернатива - перейти на более новую версию Mule и заменить разъем Jetty HTTP-прослушивателем. Если вы определяете свой REST API с помощью файла RAML, вы также можете использовать маршрутизацию и проверку APIKit.

...