1.6 Extending Novell Teaming Web Services

Given that Novell Teaming is Open Source software, you have the source code that implements our Web services, and you can extend it. However, we invite you to operate within the spirit of an Open Source community by participating in the Novell Teaming online community, sharing your code with others, and working with the Novell Engineers to incorporate your Web services extensions into the base product. In this way, you make the product and community stronger, and you avoid doing work that might need to be reworked in future versions of Novell Teaming because of engineering changes.

Of course, whether you participate in the community or upgrade to future versions of the software is up to you. Regardless of your decision, Novell Teaming includes an example that provides a structure that enables users of all versions of our software to be able to extend our Web services in the most optimal way, minimizing work that you would need to do to maintain the extensions for every upgrade.

Novell Teaming includes an extended Web services example, which adds the getBinderTitle message and the getBinderTitle command to the wsclient.bat sample client. The source code for the extension is located in this directory and in its subdirectories:

/ssf/samples/extendedws

This directory contains the readme.txt file, which provides cursory directions for establishing the extension. Those instructions are repeated here and elaborated upon.

To implement the extension:

  1. Use a command-line window to go to the /extendedws directory.

  2. Execute this command:

    > ant deploy
    
  3. In the installation directories (not the source code), open this file for editing:

    /icecore installation dir/webapps/ssf/WEB-INF/server-config.wsdd
    

    Replace the string com.sitescape.team.remoting.ws.JaxRpcFacade with the string com.sitescape.team.samples.extendedws.server.JaxRpcFacade2.

    If you upgrade to a new version of the software, you need to repeat this step to re-implement your Web services extensions.

  4. In the same set of directories, open this file for editing:

    /install dir/webapps/ssf/WEB-INF/context/applicationContext.xml
    

    Replace the string com.sitescape.team.remoting.ws.FacadeImpl with the string com.sitescape.team.samples.extendedws.server.FacadeImpl2.

    Also, replace the string com.sitescape.team.remoting.Facade with the string com.sitescape.team.samples.extendedws.server.Facade2.

    If you upgrade to a new version of the software, you need to repeat this step to re-implement your Web services extensions.

  5. Restart the c server.

  6. To test the new Web services message, view this page in a browser window:

    http://local host and port/ssf/ws/Facade?wsdl
    

    The getBinderTitle message should now appear.

    To test the additional command in the wsclient.bat file (Windows only), cd to this directory:

    /ssf/samples/remotingclient
    

    Execute this command:

    > ant zip
    

    And test the newly enabled batch-file command:

    > wsclient getBinderTitle 1
    

Both the new message and command accept a binder identifier as a parameter and return the textual title of the binder.