A port is defined for each service that contains a one-way (send) operation, identifies a remote system, and associates one or more operations with that system. The port associates the operations with an endpoint appropriate for the type of service.
Each business process is associated with one or more port types. One or more ports are added to each port type for the business process.
Ports have different functionality, depending on the type of service:
A messaging service port corresponds to a messaging endpoint that uses a messaging transport.
A database service port corresponds to a database endpoint.
A replication event service port corresponds to a messaging endpoint that uses a messaging transport.
Web services do not use ports.
You add ports to services that contain a one-way (send) operation using the Port Wizard during either of the following phases:
During the Define phase, where services and port types are defined. The completed port definition is added to the service's wsdl.
or
During the Configure
phase, after a package has been created
and delivered to a runtime instance.
When a port is added during the configure phase, the port definition is
updated in the service's wsdl if the project resides in the workspace.
To redeploy, the package must be regenerated before it is delivered to
the instance for redeployment.
Flexibility in adding and modifying ports helps users with business processes that are deployed to multiple instances:
Adding ports during the Define phase allows the project to be packaged and deployed to multiple instances where all instances use the same port.
Adding or modifying ports during the Configure phase allows the project to be packaged, with ports being defined after the package is delivered to the instances.
Ports are required for binding to service endpoints. They can be added during the Design or Configuration phase.
Note: The step that associates services containing notification operations with messaging transports used for input messages is completed during the Configure phase. See Defining Input Transports for Runtime Instances.