Many a times its not possible to use the WSDL created by JDeveloper in BPEL project because of various reason like
- SOA Governance standards
- WSDL shipped by vendor or partner or third party application
- etc.
For such reasons we have to develop our BPEL project in a slightly different way. Below I am presenting step by step guide to accomplish the above mentioned task. Hope this helps.
Select on Workspace > New Project > BPEL Process Project, click OK
Select Empty BPEL Process from “Template” top-down menu, Click Finish.
Please note that here I am selecting Empty BPEL process for the sake of simplicity, however you can follow pretty much the same steps in other templates (including custom templates). Idea is to create a partner like with custom WSDL and attach it with receive (or pick) activity.

You should now see an Empty BPEL Process with main scope and no activities
Now move your mouse to “Services” swim lane and right click, Select “Create Partner Link”
For the test purpose, I am picking customerPartyMaster.wsdl shipped with OAGIS 9.2 model. I hosted that WSDL on web server to avoid hassles of maintaining references.
It will prompt you to create “Partner Link Types” section in WSDL, please select “Yes”.
This will create a Ref WSDL which imports WSDL you specified and adds “Partner Link Type” section to it.

Now select the Partner Link Type, Partner Role and My Role.
Now drag “Receive” activity in your project. Point receive to “client”, this way your WSDL becomes the WSDL of your BPEL process. Select the operation you want to use for this BPEL project. If you want to make this BPEL multi-operation BPEL i.e. BPEL exposing more than one operatin, please use “Pick” activity to do so. Rest of the steps remains the same.
Click on the “Wizard” icon to create InputVariable. It should automatically pick up data type based on the selected operation.
Click OK (on both create variable and Receive activity).
Now drag “Reply” activity to your project and point it to “client” partner link. Select the operation and create response variable for that.
Now putting sample assign activity which maps one field of input variable to one in output variable
Click OK, your assign should look like this.

Click OK and your project should look like this
This completes your BPEL process with custom WSDL. Now you should be able to deploy it and test it on BPEL server.
To test this project, would recommend using SOAP UI for testing. Testing page shipped with application is not always reliable. SOAP UI is still gold standard for me.
Check endpoint property for the port and operation which we used for the project

Create new request for the operation which we used in BPEL and pick the right endpoint location from the dropdown.
Prepare the request and send it to BPEL Server
Response from the BPEL process.
This completes our exercise.