在ode bpel中使用身份验证标头调用Web服务

时间:2017-08-30 12:26:39

标签: http-headers bpel apache-ode

我正在使用eclipse bpel设计器并尝试调用需要传递身份验证标头的外部服务。

这是我所做的 1.使用以下内容创建headers.endpoint文件

*alias.sample_ns="http://sample.com"  
sample_ns.serviceName.portName.ode.http.default-headers.username=system
sample_ns.serviceName.portName.ode.http.default-headers.password=admin*
  1. 将其放置在.. \ webapps \ ode \ WEB-INF \ processes \ $ process folder
  2. 当我调用服务时,我收到以下错误 “发送消息时出错(mex = {PartnerRoleMex #hqejbhcnphrckf492s9n9b [PID {http://createReservation} CreateReservation-1541]调用org.apache.ode.bpel.epr.WSAEndpoint@1e1f4b8.saveRecord(...)状态ASYNC }):传输错误:401错误:Unautho“。

    我认为我还需要在BPEL流程中调用服务时添加标头信息。但是找不到办法。怎么可以做到,如果这实际上是我所缺少的?还是还有别的事要做?

    提前致谢

1 个答案:

答案 0 :(得分:0)

注意:无法在* .endpoint文件中设置HTTP身份验证信息。

用于调用HTTP服务

  

Testcase将告诉你如何做到这一点   https://github.com/apache/ode/tree/ode-1.3.x/axis2-war/src/test/resources/TestEndpointProperties

     

在WSDL中添加消息部分,如下所示   https://github.com/apache/ode/blob/ode-1.3.x/axis2-war/src/test/resources/TestEndpointProperties/Echo.wsdl#L66

     

在流程中分配凭据
  https://github.com/apache/ode/blob/ode-1.3.x/axis2-war/src/test/resources/TestEndpointProperties/test-endpoint-properties.bpel#L73

用于调用肥皂服务

  

http://ode.apache.org/http-authentication.html