Skip to main content link. Accesskey S
  • Log In
  • Help
  • IBM Logo
  • Lotus Expeditor wiki
  • All Wikis
  • All Forums
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • IBM Redbooks
Community Articles Product Documentation Learning Center IBM Redbooks This category Lotus Expeditor 6.2.3 Documentation Custom Search Scope...
Search
Community Articles > Expeditor Client for Desktop > Sample: Creating a JAX-WS client for Lotus Expeditor
  • New Article
  • Share Show Menu▼
  • Subscribe Show Menu▼

About the Original Author

Van Staub
Contribution Summary:
  • Articles authored: 26
  • Articles edited: 13
  • Comments Posted: 4

Recent articles by this author

Sample: Toolbar and Menu Contributions

Expeditor user interface team best practices on toolbar and menu contributions

Sample: Component Properties

OverviewComponent properties allow developers to create code that at compile time has specific function but accepts flexible input at runtime. For example, a developer can create a component that uses a predefined component property to update the title tab's text within a composite ...

Sample: Multiuser Features

Overview When multiple users share the same workstation, the configuration is referred to as a multiuser installation. This means that a single Expeditor client exists and is shared among all users; however, each user has their own workspace containing configuration details specific to that ...

Sample: Starting Plugins

Overview By default, Eclipse plugins are lazy. Lazy is the technical term (located in the bundle's manifest) that means that plugins are started when a request is either directly made by the Platform to start the plugin or indirectly through class loading. For example, the latter case implies ...

Sample: HTTP Communication

Overview The enhanced HTTP client in Expeditor allows developers to quickly create code that requests data from remote servers over HTTP or HTTPS. The enhanced client wraps the standard Java URLConnectionclasses such that authenticated requests leverage the Accounts framework and HTTPS ...

Community articleSample: Creating a JAX-WS client for Lotus Expeditor

Added by Van Staub | Edited by IBM contributor Van Staub on September 3, 2010 | Version 12
expanded Abstract
collapsed Abstract
While Lotus Expeditor does not directly provide support for JAX-WS, the Java 1.6 runtime provides the necessary support to use JAX-WS clients on the Lotus Expeditor platform.
Tags: samples
To create a JAX-WS client, the following steps can be completed:

1. Create the JAX-WS web service.
2. Create the JAX-WS client.
3. Deploy client code to an Expeditor client.
==Create the JAX-WS web service
==

Using Rational Application Developer (RAD), create a web service that will simply respond with date information to the caller.

Create a class file with the following contents.

package com.ibm.rcp.support.ws.remote;

import java.util.Calendar;

public class RemoteSystem {
    
    public String getSystemTime(){
        return Calendar.getInstance().getTime().toString();
    }
}

 
To generate a web service on the above bean, simply:
1. Right mouse click the class file in the package navigator.
2. Select Web Services -> Create Web Service.
3. Select the "IBM WebSphere JAX-WS" web service runtime.
4. Select the corresponding WebSphere Application server runtime.
5. Complete the wizard using default values.
6. Export the EAR project as an EAR.
7. Install the enterprise application EAR in the WebSphere Application Server.
You should now be able to validate that a Web Service can be found at the following URL:

http://<your_was_server>:<port>/com.ibm.rcp.support.ws.remote/services/RemoteSystem

==Create the JAX-WS client
==

Again in RAD, create the client code by completing:
1. Create a Client Services Project
2. Locate the WSDL file within the Web Service project; usually in WEB-INF/wsdl.
3. Copy the WSDL file into the Client Services project.
4. Update the WSDL files, "wsdlsoap:address location" to reference your WebSphere server.
5. Right mouse click the WSDL file and select Generate Client.
6. Select the JAX-WS web service runtime.
7. Select the WebSphere Application Server v7.0 server.
8. Complete the wizard using default values.
 
Note that even though you selected the WebSphere runtime, deploying to Lotus Expeditor is possible.
Web Service Client Properties
 
==Deploy client code to an Expeditor client
==

Given we have a simple skeleton, you will likely need to do additional development.  When importing the project into Eclipse, you will notice an error in the project. 

Eclipse Error

This is due to a RAD variable.  Simply remove the WAS_V7JAXWS_WEBSERVICES_THINCLIENT variable.

WebSphere Variable Removal

If you intend on using the variable and corresponding library, ensure that the JAR is either deployed to Expeditor as a plugin or contained within the JAX-WS Client Services plugin.

Next update the Activator class to test the plugin.

public void start(BundleContext context) throws Exception {
    super.start(context);
    plugin = this;
    
    RemoteSystemProxy proxy = new RemoteSystemProxy();
    System.out.println(proxy.getSystemTime());
}

 
Either deploy to an Expeditor Client or launch an Expeditor Client from the Eclipse IDE.  Invoke the Web Service client by issueing the command start <bundle_symbolic_name> on the OSGI console.  For example, start com.ibm.rcp.support.ws.remote.client.jaxws.  The Activator will instantiate and call the web service using its start() method.  You may alternatively invoke the web service within your own code.

(See attached file: jax-ws_source_projects.zip)
expanded Attachments (3)
collapsed Attachments (3)
File TypeSizeFile NameCreated On
image/jpeg 64 KB was_var.JPG 9/3/10 4:16 PM
image/jpeg 21 KB error_eclipse.JPG 9/3/10 4:16 PM
image/jpeg 57 KB client_properties.JPG 9/3/10 4:16 PM
expanded Versions (24)
collapsed Versions (24)
Version Comparison     
VersionDateChanged by              Summary of changes
24May 12, 2011 2:55:19 PMVan Staub  IBM contributor
23Oct 5, 2010 11:19:13 AMVan Staub  IBM contributor
22Oct 5, 2010 9:02:23 AMVan Staub  IBM contributor
21Sep 15, 2010 1:37:20 PMVan Staub  IBM contributor
20Sep 8, 2010 12:58:33 PMVan Staub  IBM contributor
18Sep 3, 2010 4:22:32 PMVan Staub  IBM contributor
17Sep 3, 2010 4:21:48 PMVan Staub  IBM contributor
16Sep 3, 2010 4:21:30 PMVan Staub  IBM contributor
15Sep 3, 2010 4:17:02 PMVan Staub  IBM contributor
14Sep 3, 2010 4:16:35 PMVan Staub  IBM contributor
13Sep 3, 2010 4:16:07 PMVan Staub  IBM contributor
This version (12)Sep 3, 2010 4:05:55 PMVan Staub  IBM contributor
12Sep 3, 2010 4:05:55 PMVan Staub  IBM contributor
11Sep 2, 2010 8:56:52 PMVan Staub  IBM contributor
10Sep 2, 2010 5:18:00 PMVan Staub  IBM contributor
9Sep 2, 2010 4:52:01 PMVan Staub  IBM contributor
8Sep 2, 2010 4:51:25 PMVan Staub  IBM contributor
7Sep 2, 2010 4:51:00 PMVan Staub  IBM contributor
6Sep 2, 2010 4:50:34 PMVan Staub  IBM contributor
5Sep 2, 2010 4:48:55 PMVan Staub  IBM contributor
4Sep 2, 2010 4:48:20 PMVan Staub  IBM contributor
3Sep 2, 2010 4:47:16 PMVan Staub  IBM contributor
2Sep 2, 2010 4:43:24 PMVan Staub  IBM contributor
1Sep 2, 2010 4:35:35 PMVan Staub  IBM contributor
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedHelpAbout
  • IBM Collaboration Solutions wikis
  • IBM developerWorks
  • IBM Software support
  • Twitter LinkIBMSocialBizUX on Twitter
  • FacebookIBMSocialBizUX on Facebook
  • ForumsLotus product forums
  • BlogsIBM Social Business UX blog
  • Community LinkIBM Collaboration Solutions
  • Wiki Help
  • Forgot user name/password
  • Wiki design feedback
  • Content feedback
  • About the wiki
  • About IBM
  • Privacy
  • Accessibility
  • IBM Terms of use
  • Wiki terms of use