0

我的场景:我有带有 wso2-ESB 的 server_1 (192.168.10.1) 和带有 Glassfish-v3 + Web 服务的 server_2 (192.168.10.2)。

问题:我正在尝试使用 java Web 服务在 ESB 中创建代理,但创建的代理没有正确响应。日志说:Unable to sendViaPost对于 http 或 https 不会改变结果。

我想我应该配置,axis2.xml但我遇到了麻烦,不知道该怎么办。我的方案的配置是什么?请帮我!

编辑:需要明确的是,我可以直接在 Glassfish 服务器中使用 WebService,它工作正常,端口和 url 都可以访问。仅当我在 ESB 中创建“通过代理”时,它才不起作用。我不认为是代理配置的问题......我在本地部署时从来没有遇到过问题,一旦我将 ESB 上传到远程服务器,问题就开始了。

我真的需要有人告诉我在远程主机上安装 ESB 时的正确程序是什么:axis2.xmlcarbon.xml的配置、端口传输接收器等... PS 我看了官方(wso2 esb 和 carbon)指南没有运气,但我错过了一些东西......

Java Web 服务的端点http://192.168.10.2:8080/HelloWorld/Hello?wsdl

ESB 代理端点http://192.168.10.1:8280/services/HelloProxy

以下是我的axis2.xml配置,请查看:

<transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
        <parameter name="port" locked="false">8280</parameter>
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="bind-address" locked="false">192.168.10.1</parameter>
        <parameter name="WSDLEPRPrefix" locked="false">https//192.168.10.1:8280</parameter>
        <parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
        <!--<parameter name="priorityConfigFile" locked="false">location of priority configuration file</parameter>-->
    </transportReceiver>

    <!-- the non blocking https transport based on HttpCore + SSL-NIO extensions -->
    <transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
        <parameter name="port" locked="false">8243</parameter>
        <parameter name="non-blocking" locked="false">true</parameter>
        <parameter name="bind-address" locked="false">192.168.10.1</parameter>
        <parameter name="WSDLEPRPrefix" locked="false">https://192.168.10.1:8243</parameter>
        <!--<parameter name="priorityConfigFile" locked="false">location of priority configuration file</parameter>-->
        <parameter name="httpGetProcessor" locked="false">org.wso2.carbon.transport.nhttp.api.NHttpGetProcessor</parameter>
        <parameter name="keystore" locked="false">
            <KeyStore>
                <Location>repository/resources/security/wso2carbon.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
                <KeyPassword>wso2carbon</KeyPassword>
            </KeyStore>
        </parameter>
        <parameter name="truststore" locked="false">
            <TrustStore>
                <Location>repository/resources/security/client-truststore.jks</Location>
                <Type>JKS</Type>
                <Password>wso2carbon</Password>
            </TrustStore>
        </parameter>
        <!--<parameter name="SSLVerifyClient">require</parameter>
            supports optional|require or defaults to none -->
    </transportReceiver>
4

2 回答 2

2

“无法发送ViaPost”,当端点不可到达时发生。您尝试从哪里访问代理。代理的 URL 是什么。首先尝试您是否可以访问该 URL 的主机和端口。

问候,/女娲

于 2012-09-23T10:42:59.877 回答
1

缺乏信息。

你的代理配置是什么?指定完整的错误。

尝试将 org.apache.synapse.transport.nhttp.wire 记录器设置为跟踪。这将记录所有 http 活动,并且您可能会理解错误的原因。

于 2012-09-22T07:19:43.007 回答