This TOTD explains how to add Reliability and Security to a Contract-First Endpoint using NetBeans IDE.
In the Contract-First, the contract, i.e. the WSDL, is defined first as opposed to starting from Java. The Metro programming model starts with a Java Service Endpoint Interface (SEI) and uses Web Service Designer to specify Security, Reliability and Transactions support. This blog uses the WSDL bundled with the
fromwsdl sample of Metro download and adds Quality-of-Service attributes to it.
Here are the steps to enable Reliable Messaging to Contract-First endpoint:
- In a new Web project, right-click and select "
Web Service from WSDL..." as shown below:
- Specify the Web Service Name, package name and chose the location of the WSDL as shown below:
The Web Service port name is chosen for you. Alternatively, you can click on "
Browse..." button next to "
Web Service Port:" and select the appropriate port.
- Click on "
Finish" and the Web Services Designer is shown as shown below:
- Right-click on the Project and select on "
Undeploy and Deploy" to deploy the project.
- Expand the "
Web Services" tree, select the newly added Web service and right-click on "
Test Web Service". The Tester page is shown in a browser with links to the packaged WSDL file and text boxes and buttons to invoke the Web service.
- In the Web Services Designer, select "
Reliable Message Delivery".
- Right-click on the project, select "
Clean" to clean all the generated files. Again right-click on the project and then select "
Undeploy and Deploy" to deploy the project again.
- As in step 5 above, test the Web service. The packaged WSDL now contains the appropriate policy assertions and Reliable Message Delivery is enabled on the endpoint.
As described in screencast #ws7, Security can be added to a Contract-First endpoint using the steps listed above.
Please leave suggestions on other TOTD that you’d like to see. A complete archive is available here.
- TOTD #23: JavaFX Client invoking a Metro endpoint
- TOTD #22: Java SE client for a Metro endpoint
- TOTD #12: Invoking a Java EE 5 Web service endpoint from JRuby
- TOTD #98: Create a Metro JAX-WS Web service using GlassFish Tools Bundle for Eclipse
- TOTD #2: Change the endpoint address on a pre-generated Web services Stub