Add the email web service for Novell GroupWise

The groupwisews email web service is an optional web service. By default, the wsdl2java proxy generator does not interpret the BlackBerry® Administration API namespaces as intended. If you use the default settings, your BlackBerry Administration API packages are stored in a flat file structure inside a com/rim/ folder . For example, a class in the package com.rim.bes.basplugin.dispatcher is stored in the client proxy as com/rim/com_rim_bes_basplugin_dispatcher instead of com/rim/bes/basplugin/dispatcher. You can use the default namespaces, but you must manually translate the package names in the code samples or change the package names manually using Eclipse®. It is time consuming to define the namespaces at first, but if you save the commands for future reference, it might save you time when you need to generate the client proxy again.
Before you begin:

Create a tempororary folder to generate the client proxy in if one does not already exist. For example, C:\Temp\BAA\proxy.

  1. At the Windows® command prompt, navigate to the bin directory of Apache CXF™. For example:
    cd C:\Program Files\apache-cxf-2.1.2\bin\
  2. Perform one of the following actions to invoke the wsdl2java proxy generator:

    Task

    Steps

    Use the default namespaces.

    1. Invoke wsdl2java.bat
      wsdl2java.bat -wv 1.1 -d
      C:\Temp\BAA\proxy https://<servername>/baaws/emailgroupwise/ws?wsdl
    2. In any code samples you use, change the package names so that they match the generated package names.

    Use the default namespaces and change them manually using Eclipse.

    1. In the bin folder, invoke wsdl2java.bat
      wsdl2java.bat -wv 1.1 -d
      C:\Temp\BAA\proxy https://<servername>/baaws/emailgroupwise/ws?wsdl
    2. Add the com folder from the client proxy to a source folder in an Eclipse project.
    3. In the Package Explorer window, right-click a package name, and click Refactor > Rename.
    4. Type the correct package name and click OK.
    5. Repeat steps 3 and 4 for each package name that contains an underscore character.

    Define the namespaces for the proxy generator.

    1. Type the following line into a text editor:
      wsdl2java.bat -wv 1.1 -d 
      C:\Temp\BAA\proxy https://<servername>/baaws/emailgroupwise/ws?wsdl
    2. To view the WSDL file for the groupwisews web service, in a browser, visit https://<servername>/baaws/emailgroupwise/ws?wsdl where <servername> is the name or IP address of the computer that hosts your BlackBerry® Administration Service.
    3. For each xml namespace at the beginning of the WSDL file, copy the package name. For example, in xmlns:ns1="http://www.rim.com/com.rim.bes.example.dto", the package name is com.rim.bes.example.dto.
    4. For each xml namespace, add the following parameter to the command in your text editor:
      -p http://www.rim.com/<package>=<package>
      For example:
      wsdl2java.bat -wv 1.1 
      -p http://www.rim.com/com.rim.bes.example.dto=com.rim.bes.example.dto 
      -d C:\Temp\BAA\proxy https://<servername>/baaws/emailgroupwise/ws?wsdl
    5. Once you have added the -p parameter for each namespace, copy the command from your text editor into your command prompt and invoke the command.
    6. Open the folder C:\Temp\BAA\proxy\rim\com.
    7. If your client proxy folder contains any namespaces that that contain an underscore character, for example com_rim_bes_bas, delete the folder C:\Temp\BAA\proxy\com, define the namespaces in your command correctly, and invoke wsdl2java again. Also re-add any other web services that you added before you deleted C:\Temp\BAA\proxy\com.
    8. Save the command in the text editor. You might need to use it again.

Example: Defining the groupwisews namespaces.

The following one-line command adds the groupwisews web service to the folder C:\Temp\BAA\proxy. Your server might contain more or fewer namespaces.
wsdl2java.bat -wv 1.1 
-p http://www.rim.com/com.rim.bes.basplugin.synchronization.dto=com.rim.bes.basplugin.synchronization.dto  
-p http://www.rim.com/com.rim.bes.bas.dto=com.rim.bes.bas.dto
-p http://www.rim.com/com.rim.bes.bas.baa.emailcommon.dto=com.rim.bes.bas.baa.emailcommon.dto
-p http://www.rim.com/com.rim.bes.bas.baa.common.dto=com.rim.bes.bas.baa.common.dto 
-p http://www.rim.com/com.rim.bes.basplugin.mdss.dto=com.rim.bes.basplugin.mdss.dto  
-p http://www.rim.com/com.rim.bes.basplugin.mdscs.dto=com.rim.bes.basplugin.mdscs.dto
-p http://www.rim.com/com.rim.bes.basplugin.emailgroupwise.dto=com.rim.bes.basplugin.emailgroupwise.dto
-p http://www.rim.com/com.rim.bes.basplugin.emailcommon.dto=com.rim.bes.basplugin.emailcommon.dto 
-p http://www.rim.com/com.rim.bes.basplugin.dispatcher.dto=com.rim.bes.basplugin.dispatcher.dto
-p http://www.rim.com/com.rim.bes.basplugin.bas.dto=com.rim.bes.basplugin.bas.dto
-p http://www.rim.com/com.rim.bes.basplugin.activedirectory.dto=com.rim.bes.basplugin.activedirectory.dto
-p http://www.rim.com/com.rim.bes.bas.baa=com.rim.bes.bas.baa
-d C:\Temp\BAA\proxy https://<servername>/baaws/emailgroupwise/ws?wsdl

Was this information helpful? Send us your comments.