Web services Oracle服务总线公开的SOAP服务中的多个操作
目前,我正在使用JDeveloper11开发一个带有OSB的ws。 我有一个简单的web服务,它调用外部SOAP服务 我的composite.xml文件:Web services Oracle服务总线公开的SOAP服务中的多个操作,web-services,soap,soa,jdeveloper,oracle-service-bus,Web Services,Soap,Soa,Jdeveloper,Oracle Service Bus,目前,我正在使用JDeveloper11开发一个带有OSB的ws。 我有一个简单的web服务,它调用外部SOAP服务 我的composite.xml文件: 我的BPEL Soap服务的操作 远程SOAP服务的操作 BPEL组件 我对当前的发展战略没有什么疑问我应该如何向我的BPEL SOAP添加新操作?我通过编辑ApusBPELProcess.xsd(添加了新的请求和响应类型)和ApusBPELProcess.wsdl(添加了新的操作、消息等)添加了一个新方法(getCompanyDetail
process
时,我想对输入参数进行一些验证,然后从远程SOap(2)调用GetServiceCompanys
。所以当客户端从BPELSOAP调用另一个方法时(1),我想调用远程Soap上的其他方法(2)
如果有人能给我看一张带有所需组件的图表,我将非常感激。因为我读过“中介”组件,但我不知道在我目前的情况下如何使用它们
提前感谢。一个选项是,您可以使用Pick活动,它可以为BPEL服务公开的每个操作提供多个onMessage分支。 类似地,Invoke活动有一个选项来选择您需要调用的远程SOAP服务的操作。
因此,您的组合看起来像是选择了BPELoperation1的OnMessage分支的Pick活动,然后选择了执行验证的逻辑,然后选择了remoteoperation1进行调用。另一个选择了BPELoperation2的OnMessage分支,选择了remoteoperation2进行验证和调用的逻辑。一个选项是,您可以使用Pick活动,该活动可以为BPEL服务公开的每个操作具有多个onMessage分支。 类似地,Invoke活动有一个选项来选择您需要调用的远程SOAP服务的操作。
因此,您的组合看起来像是选择了BPELoperation1的OnMessage分支的Pick活动,然后选择了执行验证的逻辑,然后选择了remoteoperation1进行调用。另一个选择了BPELoperation2的OnMessage分支,选择remoteoperation2进行验证和调用的逻辑。我找到了一个带有中介组件的解决方案。也许它会帮助别人 好的,我在公开服务和远程服务之间添加了一个中介组件。中介组件将在这两个服务之间进行请求路由和数据转换。对于公开服务中的每个方法,我都向中介的另一个端点添加了一个BPEL流程(我将在这些BPEL流程中执行一些特定于方法的验证/其他逻辑) 我的最终composite.xml:
希望有人会喜欢。祝你好运 我找到了一个包含中介组件的解决方案。也许它会帮助别人 好的,我在公开服务和远程服务之间添加了一个中介组件。中介组件将在这两个服务之间进行请求路由和数据转换。对于公开服务中的每个方法,我都向中介的另一个端点添加了一个BPEL流程(我将在这些BPEL流程中执行一些特定于方法的验证/其他逻辑) 我的最终composite.xml:
希望有人会喜欢。祝你好运 谢谢你的评论。是的,我同意这是一个选择。但我需要一个中介变量。谢谢你的评论。是的,我同意这是一个选择。但我需要一个中介变量。