Web services apex标注中的自定义SOAP信封命名空间

Web services apex标注中的自定义SOAP信封命名空间,web-services,soap,apex,callout,Web Services,Soap,Apex,Callout,我正在创建一个对Siebel的SOAP调用,默认情况下会得到下面的SOAP信封头: <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <env:Header> <Securit

我正在创建一个对Siebel的SOAP调用,默认情况下会得到下面的SOAP信封头:

<env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<env:Header>
    <Security
        xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
        <UsernameToken>
            <Username>myUsername</Username>
            <Password>myPassword</Password>
        </UsernameToken>
    </Security>
</env:Header>
<env:Body>
 ----------

我的用户名
我的密码
----------

虽然siebel期望:

 <env:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"         xmlns:cus="http://siebel.com/customlink" xmlns:abcd="http://www.siebel.com/xml/xyz"
<env:Header>
    <Security
        xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
        <UsernameToken>
            <Username>myUsername</Username>
            <Password>myPassword</Password>
        </UsernameToken>
    </Security>
</env:Header>
<env:Body>
 ----------

请记住,在Siebel中,您始终可以使用自定义筛选业务服务来拦截消息(入站和/或出站)。有时,这对记录消息、剥离凭据等敏感信息非常有用,但也可以在必要时用于转换消息(例如,某些系统可能不喜欢mustUnderstand属性,其他系统可能需要剥离或添加命名空间属性,其他系统可能需要添加/删除自定义上下文标题,等等。)。Siebel bookshelf中的集成文档提供了有关如何通过脚本修改消息的示例。

Salesforce支持部门表示,它不支持SOAP信封中的自定义命名空间。我应该使用中间件来实现这一点。