Jump to: navigation, search

BtM WSDM TPTP 4.4 Use Cases

Use cases for TPTP Tooling:

1. User wants to build and test WSDM endpoint to be deployed on particular application server. Endpoint does not have any complex properties or operations with complex parameters or any custom fault definitions. Notifications support is not required. No actual deployment is desired at this point. All code is to be written from scratch.

Supported test deployments are J2EE, OSGi, Axis2 on J2EE and Axis2 on OSGi

- use mrt editor to define mrt. Add existing capabilities to mrt. - bring up capability editor from mrt. Define new properties and operations. - generate code on mrt - in the created project, follow the TODOs

a. deploy web project on embedded tomcat and test with MAX (can we do automatic MAX with servers other than tomcat) b. deploy OSGi project (does MAX come up automatically)

2. As above but notifications support is desired.

- use mrt editor to define mrt. Add existing capabilities to mrt. - bring up capability editor from mrt. Define new properties and operations. Define topics. - generate code on mrt - in the created project, follow the TODOs. Also publish notifications as required (maybe skeletal code is added for this). - deploy web project on embedded tomcat or Eclipse OSGi test with MAX - in MAX, choose particular event topic - see the published events in a separate table view (like the Server Monitor)

3. As 1 but with actual deployment and reuse of existing code

Supported deployments are J2EE, OSGi, axis2 on J2EE and axis2 on OSGi

- use mrt editor to define mrt. Add existing capabilities to mrt. - bring up capability editor from mrt. Define new properties and operations. - create deployment descriptor - either from scratch or from the MRT - change deployment options (initial instances, code generation customization like changing class name) or specify other

options like JAR files to be included - do code generation on the deployment descriptor template - in the created project, follow the TODOs

4. As 3 with notifications

Do 2 and 3 5. As 1 but with complex data types for properties and operation parameters

- use mrt editor to define mrt. Add existing capabilities to mrt. - bring up capability editor from mrt. Define new properties and operations. Import complex types - defined in Java - generate code on mrt - in the created project, follow the TODOs - look at the generated DD and provide the serializers specified there

Test as in 1 but enter complex values in MAX

6. As 1 but reuse existing Schemas and WSDLs for property and operation definition

- in capability editor, use the option to import one or more XSDs and WSDLs respectively rest remains the same

- do we need custom serializers for the added types?

7. Instrument existing java code (proper bean) as capability. Assume source may or may not be available

- ability to right click on a class or in File > New.. instrument class for WSDM - pick a class that is in the class path or from any JAR (classes must be in JARs) - extract chosen properties and operations from the class through dialog - XSD and WSDL are created and capability is created - change metadata as necessary. other items cannot be changed. new properties and operations cannot be added since source may not be available - use capability in a resource type - generate code on resource type - JAR is automatically added to the DD and the generated endpoint - in code generation, the generated capability class creates instance of the specified class (must have no argument constructor and be a proper bean) and forwards all requests to that class. must not use reflection. - deploy as before and test with MAX