使用Jboss Fuse公开Pass-Through代理

时间:2017-07-13 13:24:06

标签: jboss jbossfuse

我是JBoss Fuse的新手,我想用Jboss Fuse公开一个Pass-Through代理。

我正在使用JBoss EAP 6.4,其中我安装了JBoss Fuse 6.3。 我还下载了Red Hat JBoss Developer Studio 10.4.0.GA,我在Spring DSL上开始了一些新的Fuse集成项目。

主要思想是创建一个Fuse,它将作为SOAP Web服务的前端使用,以便使用Fuse的限制和其他功能。

如果可行,请告诉我吗?

提前谢谢你!

编辑: 我看起来像是以下内容:

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd        http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
    <camelContext id="_camelContext1" xmlns="http://camel.apache.org/schema/spring">
    <route id="_route1">
        <from id="_from1" uri="cxf:beanId:address"/>
        <to id="_to1" uri="cxf:beanId:address"/>
    </route>
    </camelContext>
</beans>

但我需要实现SOAP(CXF)Web服务,它将在Camel路由之前站立。我错了吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用Apache Camel进行实验。

从某个端口侦听并将传入的请求路由到SOAP Web服务,这是一个例子:

<camelContext xmlns="http://camel.apache.org/schema/blueprint" id="PassThroughProxy" >

    <route id="ProxyRoute">
        <from uri="jetty:http://0.0.0.0:8080?matchOnUriPrefix=true"/>
        <log message="Incoming message - headers: ${headers}" />
        <log message="Incoming message - payload: ${body}" />
        <to uri="bean:someProcessorHere" />
        <to uri="http://soap.somewhere.net:80?bridgeEndpoint=true&amp;throwExceptionOnFailure=false"/>
    </route>

</camelContext>

使用Jetty component作为输入,使用Camel(处理器,路由,...)处理HTTP标头和/或正文,然后使用HTTP component作为真实Web服务的客户端。

您可以配置SSL支持,自定义标头处理等。

如果我是你,我会使用一些专门的软件来完成这项工作,例如Nginx