Web services Web服务响应为HTML而不是SOAP消息

Web services Web服务响应为HTML而不是SOAP消息,web-services,soap,wso2,wso2esb,Web Services,Soap,Wso2,Wso2esb,我正在处理一个wso2场景,在这个场景中,我向一个Web服务发送一条SOAP消息,然后接收并处理答案。为此,我有两个Web服务。一个放置在测试环境1中,另一个放置在活动环境2中 我没有访问webservice代码的权限,我只是一个用户 问题是: 经由SOAPUI 我能够使用webservices1和webservices2提供的服务。没有错误,一切正常。 通过WSO2 我可以使用webservice1中的服务,但是当我指向webservice2时,我会得到一个html403禁止响应,而不是SOA

我正在处理一个wso2场景,在这个场景中,我向一个Web服务发送一条SOAP消息,然后接收并处理答案。为此,我有两个Web服务。一个放置在测试环境1中,另一个放置在活动环境2中

我没有访问webservice代码的权限,我只是一个用户

问题是:

经由SOAPUI

我能够使用webservices1和webservices2提供的服务。没有错误,一切正常。 通过WSO2

我可以使用webservice1中的服务,但是当我指向webservice2时,我会得到一个html403禁止响应,而不是SOAP/XML消息。 我是否遗漏了什么,或者这可能是对Web服务的错误配置

以下是我的输入/输出请求:

顺序:

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="pricing" trace="enable" xmlns="http://ws.apache.org/ns/synapse">
    <smooks config-key="smooks-csv.xml">
        <input type="text"/>
        <output type="xml"/>
    </smooks>
    <iterate expression="//product" id="iterateXML" sequential="true"
        xmlns:ns="http://org.apache.synapse/xsd" xmlns:ns3="http://org.apache.synapse/xsd">
        <target>
            <sequence>
                <payloadFactory media-type="xml">
                    <format>
                        <xyz xmlns="http://tempuri.org/">
                            <safeKey>$6</safeKey>
                            <storeId>$5</storeId>
                            <articleId>$1</articleId>
                            <barcode/>
                            <sku>$2</sku>
                            <price>$3</price>
                            <discount>$4</discount>
                        </xyz>
                    </format>
                    <args>
                        <arg evaluator="xml" expression="//articleId"/>
                        <arg evaluator="xml" expression="//sku"/>
                        <arg evaluator="xml" expression="//price"/>
                        <arg evaluator="xml" expression="//discount"/>
                        <arg evaluator="xml" expression="//storeId"/>
                        <arg evaluator="xml" expression="//key"/>
                    </args>
                </payloadFactory>
                <in>
                    <header name="Action" scope="default" value="http://tempuri.org/xyz"/>
                    <send>
                        <endpoint>
                            <recipientlist>
                                <endpoint key="PS_PRICING"/>
                                <endpoint key="fileSave"/>
                            </recipientlist>
                        </endpoint>
                    </send>
                    <drop/>
                </in>
                <out>
                    <send/>
                </out>
                <log level="full" separator=";">
                    <property expression="*" name="ResponsePriceUpdate"/>
                </log>
            </sequence>
        </target>
    </iterate>
</sequence>
更新:

使用TCPMon和TCPTrace进行测试后,我得到以下结果:

经由SOAPUi

如果我发送消息SOAPUi->livewebservice-工作正常!图a 如果我发送消息SOAPUi->TCPMon/TCPTrace->livewebservice-403禁止!图片b 这对我来说毫无意义。我的点子快用完了

a

b


可能会将?wsdl作为后缀添加到url:http://sample.com/webservice.asmx?wsdl

对于发现此问题相关的人员:


问题出在服务器端。服务器拒绝了一些未知的传入流量源。

当您使用SOAPUI和WSO2 ESB时,可以使用tcpmon并比较请求/响应SOAP消息。也许您可以找到差异并修复…从服务器返回的html正文的屏幕截图中缺少了最重要的内容。@AydinK。您可以在屏幕截图中看到html正文的开头。我想最重要的是visbile。你能复制整个服务器响应吗?这是一个经典的HTML403页面。没什么特别的,没用。同样的回答。当我发送到测试Web服务时,我也不使用?wsdl。谢谢你抽出时间!