0

跟随加载和运行的客户端骆驼上下文很好。这个原子服务通过 dicrect-vm 接受来自其他包的请求以连接到外部 REST 服务器。

<camelContext id="_camuatomicservicecontext" xmlns="http://camel.apache.org/schema/blueprint">
        <route id="_camuatomicserviceroute1">
            <from id="_from1" uri="direct-vm:camuatomicservice">
                <description>accepts vm messages directly </description>
            </from>
            <log id="_log1" message="Camu Atomic Service body = ${body}, header= ${header.uriPattern}"/>
            <setHeader headerName="api.key" id="_setHeader1">
                <constant>"9GC1hnEeNIWVbehmxxjUwkj1Wcx2Y-P7SgOUZvVUzkM"</constant>
            </setHeader>
            <setHeader headerName="CamelHttpPath" id="_setHeader1">
                <simple>${header.uriPattern}</simple>
            </setHeader>
            <setHeader headerName="CamelHttpMethod" id="_setHeader2">
                <simple>${header.CamelHttpMethod}</simple>
            </setHeader>
            <to id="_to1" pattern="InOut" uri="netty4-http:http:{{camu.host}}:{{camu.port}}/{{camu.path}}?matchOnUriPrefix=true"/>
            <log id="_log2" message="CamuAtomicService Response body ${body}"/>
        </route>
    </camelContext>

所以我想要一个模型 API 来测试。我在另一个包中创建了以下上下文以进行测试。但它拒绝启动。我在文档中读到同一主机和端口上的 netty4-http 组件必须具有相同的配置。但它仍然不会启动。

<camelContext id="_camumockcontext1" xmlns="http://camel.apache.org/schema/blueprint">
        <route id="_camumockroute1">
            <from id="_from1" pattern="InOut" uri="netty4-http:http:localhost:8288/external?matchOnUriPrefix=true">
                <description>Mock the Camu API</description>
            </from>
            <process id="_process1" ref="CogMockProcessor"/>
            <log id="_log1" message="Made it here CamuMock headers = ${headers}"/>
        </route>
    </camelContext>

我尝试了 log:set DEBUG 但在 hawtio 中没有看到与此捆绑包相关的任何内容

4

1 回答 1

0

原因是与另一个捆绑包的端口冲突。然而,虽然我在蓝图和属性中更改了端口,并提交到我的本地 git 存储库,但构建并没有更新 jar 文件,这意味着端口没有更改以匹配源。我去了目标并删除了 jar 文件并重新构建和重新部署,它工作。如果来源看起来不错,但有些东西不起作用,请在 hawtio 上下文中仔细检查您所做的更改是否生效。

于 2021-05-16T22:59:31.383 回答