- Developing SOA Applications with Oracle SOA Suite
- Getting Started with Oracle SOA Suite
- Getting Started with Developing SOA Composite Applications
- Adding Wires
- How to Wire a Service Component and a Reference
How to Wire a Service Component and a Reference
You can wire a service component to a reference binding component from the SOA Composite Editor.
To wire a service component and a reference:
- In the Applications window, double-click composite_name or single-click composite_name above the designer.
- From the service component, drag a wire to the reference, as shown in Figure 2-20.
Figure 2-20 Wiring of a Service Component and Reference
Description of "Figure 2-20 Wiring of a Service Component and Reference" - If the service component is a BPEL process, double-click the BPEL process to open Oracle BPEL Designer. Note that the reference displays as a partner link in the right swimlane, as shown in Figure 2-21.
Figure 2-21 Display of the Reference as a Partner Link in the BPEL Process
Description of "Figure 2-21 Display of the Reference as a Partner Link in the BPEL Process" - Select Save All from the File main menu.
- In the Applications window, select the composite_name file.
- Click the Source tab to review what you have created.
The
orderprocessor_client_ep
service binding component provides the entry point to the composite.<service name="orderprocessor_client_ep" ui:wsdlLocation="oramds:/apps/FusionOrderDemoShared /services/orderbooking/OrderBookingProcessor.wsdl"> <interface.wsdl interface= "http://www.globalcompany.example.com/ns /OrderBookingService#wsdl.interface(OrderProcessor)" <binding.adf serviceName="OrderProcessorService" registryName=""/> <callback> <binding.ws port="http://www.globalcompany.example.com/ns /OrderBookingService#wsdl.endpoint(orderprocessor_clientep/OrderProcessorCallback_ pt)"/> </callback> </service>
The
OrderProcessor
BPEL process service component appears.<component name="OrderProcessor"> <implementation.bpel src="OrderProcessor.bpel"/> </component>
A reference binding component named
StoreFrontService
appears. The reference provides access to the external service in the outside world.<reference name="StoreFrontService" ui:wsdlLocation="oramds:/apps/FusionOrderDemoShared /services/oracle/fodemo/storefront/store/service/common/serviceinterface/StoreFron tService.wsdl"> <interface.wsdl interface="www.globalcompany.example.com#wsdl.interface(StoreFrontService)"/> <binding.ws port="www.globalcompany.example.com#wsdl.endpoint(StoreFrontService/StoreFrontServ iceSoapHttpPort)" location="oramds:/apps/FusionOrderDemoShared/services/oracle/fodemo/storefront/sto re/service/common/serviceinterface/StoreFrontService.wsdl"/> </reference>
The communication (or wiring) between service components is as follows:
-
The source
orderprocessor_client_ep
service binding component is wired to the targetOrderProcessor
BPEL process service component. Wiring enables web service message communication with this specific BPEL process. -
The source
OrderProcessor
BPEL process is wired to the targetStoreFrontService
reference binding component. This is the reference to the external service in the outside world.
<wire> <source.uri>orderprocessor_client_ep</source.uri> <target.uri>OrderProcessor/orderprocessor_client_ep</target.uri> </wire> <wire> <source.uri>OrderProcessor/StoreFrontService</source.uri> <target.uri>StoreFrontService</target.uri> </wire>
-