Overview of Top-down and Bottom-up SOAP Web Service Development

Web services can be created using two ways: top-down development and bottom-up development.


Top-down web services development

  • Top-down Web services development involves creating a WSDL and then creating the Web service using the WSDL file. 

    • In top-down approach, first you design the implementation of the Web service by creating a WSDL file. You can then create the Web service skeleton Java classes from the wsdl, and add the required code. 

  • JAX-WS tool wsimport can be used for creating a top down web service.

    • The wsimport can create stubs from a wsdl. 

    • See notes on JAX-WS tools wsimport and wsgen.

  • Top down approach is also called as contract first or WSDL first approach.

  • Most common in production scenarios.

  • Example scenarios:

    • Users will be responsible for developing their own clients using different frameworks, based on a published WSDL.


Development tips

  • Even in WSDL first approach, you can write a simple throwaway java class, generate a WSDL and then start customizing it based on our need.


Bottom-up web services development

  • When creating a Web service using a bottom-up approach, first you write the java classes for the web service and then create the WSDL file and publish the web service.

    • Although bottom-up Web service development may be faster and easier, the top-down approach is the recommended way of creating a Web service.

  • JAX-WS tool wsgen can be used for creating a bottoms up web service. 

    • The wsgen tool reads an existing web service implementation class (SIB) and generates the required JAX–WS portable artifacts for web service development and deployment.​

    • See notes on JAX-WS tools wsimport and wsgen.

  • Bottum up approach is also called as Service first or code first approach.

  • Ideal for learning web services.

    • Example scenarios:

      • Situations which need quick and faster completion may prefer Java approach

        • Java first approach is often the fastest and easiest approach.

      • Code reuse is required.

        • It may be better to write code first if you want to reuse code.



Can you please share me the materials to prepare for java ee 6 web services developer certified expert 1z0-897 exam?

Thanks much!

Was it useful?

Search the Web

Custom Search

Searches whole web. Use the search in the right sidebar to search only within javajee.com!!!