我有一个正常运行的Mule应用程序,我想在其上设置Jetty以响应http请求。以下配置:

<jetty:endpoint address="http://localhost:8080"
                name="jettyEndpoint"
                host="localhost"
                port="8080" path="/"
                synchronous="true" />

<service name="jettyUMO">
  <inbound>
    <jetty:inbound-endpoint ref="jettyEndpoint" />
  </inbound>
  <test:component appendString="Received" />
</service>

...在我启动应用程序时起作用,并将所选的浏览器指向http://localhost:8080-根据test:component,显示的所有内容均为“已接收”。

我想要做的就是更新此文件,以便我不希望看到“已接收”,而是要转到定义index.html文件的位置。我的假设是我必须将test:component更改为出站端点-这是正确的吗?我在哪里指定路径(相对或绝对)?

最佳答案

我必须添加一个jetty:connector实例:

<jetty:connector name="httpConnector"
                 configFile="conf/jettyConfig.xml"
                 useContinuations="true" />

这是jettyConfig.xml的内容,因为simple example有错误:
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">

<Configure id="Server" class="org.mortbay.jetty.Server">
  <Call name="addConnector">
    <Arg>
      <New class="org.mortbay.jetty.nio.SelectChannelConnector">
        <Set name="port">8080</Set>
      </New>
    </Arg>
  </Call>

  <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>
        </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">path/webapps</Set>
      </New>
    </Arg>
  </Call>
</Configure>

09-28 06:05
查看更多