Prototype Web Service

Posted by dhentche on 01-Apr-2009 13:49

A simple simulation for a back-end Web Service, built on Apache CXF. It uses ant scripts to build and run and executes within an enclosing Eclipse project. There is no direct connection with Sonic or any other proprietary product.

This version simply displays the inbound Web service request on the console, then returns a hard-wired SOAP response. It can be useful when prototyping web service interactions or testing simple connectivity. It responds to the ?wsdl suffix appropriately.

At launch time you can configure the endpoint URL, the WSDL for the service and an optional sleep time.

The package includes the following:

  • Eclipse project for developing and running the prototype web service
  • source code
  • ant scripts to build and run
  • various required apache libraries

---------------------------  README file  ---------------------------------

PrototypeWS web service simulator.
-----------------------------------
A simple, canned web service based on the CSX framework that can be run within
Eclipse for demo/test purposes.  See License Info, below.

--------------------------------------------------------------------------------
Running the service:
* Review the ./dist/service_startup.properties parameters, and modify as desired
* Right-click ./build.xml, select "Run as Ant Build...", pick target "run" and run it
* View service output (including message trace) in the console window that opens below

--------------------------------------------------------------------------------
Testing:
* Start the back-end service (see above)
* Invoke the web service directly
- use the PrototypeWS-soapui-project.xml SoapUI project
- reference ./wsdl/PrototypeWS.wsdl
* Run the test scenario of the TestProtoService ESB Process
- upload TestProtoService.esbp;  this is a wrapper ESB process that invokes the
    back-end service, itself exposed as a web service;
- run the TestProtoService test scenarios to execute within the ESB
- optionally, use the TestProtoServiceWS-soapui-project.xml SoapUI project to test
    via external web service invocation
* The TestProtoService process is also exposed as a web service that you can test.

--------------------------------------------------------------------------------
Modifying the code:
* edit the source files in the src directory
- recommendation: make variable features configurable via the built-in service_startup.properties
* run ant config file build.xml with the "deploy" target

--------------------------------------------------------------------------------
Contents:
* wsdl directory: The wsdl for running this web service is PrototypeWS.wsdl
* lib directory contains jar files needed to run the service
* dist directory contains the runtime library and startup parameters for the service
* src directory: Java source for the web service
* test directory: Tests for validating the web service, including test messages, ESB Process and
    SoapUI projects

--------------------------------------------------------------------------------
License Info:

  SONIC SOFTWARE MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY
  OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
  PURPOSE, OR NON-INFRINGEMENT. PROGRESS SHALL NOT BE LIABLE FOR ANY DAMAGES
  SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
  THIS SOFTWARE OR ITS DERIVATIVES.

PrototypeWS_eclipse_1Apr2009.zip

All Replies

Posted by Paul Koufalis on 07-Jan-2010 16:50

I am trying to run this and get an error

     [java] INFO: Creating Service {urn:esbx/proto}ProtoPortService from class com.sonicsw.esbx.ws.ProtoPort
     [java] java.lang.Error: Unresolved compilation problems:
     [java]     The import org.objectweb cannot be resolved
     [java]     ClassWriter cannot be resolved to a type

My CLASSPATH is C:\apps\Sonic761\Workbench7.6\workspace\PrototypeWS\lib;C:\apps\ow2-jotm-dist-2.1.7\lib

Any help would be appreciated.

Posted by Paul Koufalis on 07-Jan-2010 16:56

Recompiled with correct classpath and I think it works now...

This thread is closed