DocumentCentricUI

Contents



Document Centric Web Services

Purpose of this document is to create a generic document oriented Web Service(not necessarily SOAP/WSDL), that receives an XML Document as request and returns an XML Document as response. Instead of implementing/calling WS Operations - RPC approach user works directly with XML Document (or with the body of SOAP Message) - Document approach.

User specifies the Messaging Type that defines the format of the messages on the wire: HTTP/XML or HTTP/SOAP.
Then, user specifies the technique used to process/generate the request/response :

  • direct access to XML content (javax.xml.transform.Source)
  • JAXB
  • SAAJ API (javax.xml.soap.SOAPMessage)


Optionally, or mandatory for JAXB, user specifies the list of XML Schemas or WSDL file.

Note: the wizards are restricted to HTTP/XML or HTTP/SOAP protocol(binding)

New Document Centric Web Service

+-------------------------------------------------------------------------------- +
|                                                                                 |
| Web Service Name: |_NewWebService'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''| |
|                                                                                 |
| Project:  |_ModuleX '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''___| |
| Location: |_Source Packages'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''v| |
| Package:  |_com.acme'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''__v| |
|                                                                                 |
| ------------------------------------------------------------------------------- |
| Select the format of the messages on the wire :                                 |
|                                                                                 |
| (*) HTTP/XML (plain XML documents used to transfer data, e.g.REST WS)           |
|     (*) Use direct access to XML content (javax.xml.transform.Source)           |
|     ( ) Use JAXB to process XML Request and to generate XML Response            |
|         XML Schemas:'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''' [Browse... ] |
|                     URL's for XML schemas specifying XML documents              |
|                     use comma (,) to separate multiple schemas                  |
|                                                                                 |
| ( ) HTTP/SOAP                                      SOAP Version: (*)1.1  ( )1.2 |
|     (*) Use direct access to SOAP content (javax.xml.transform.Source)          |
|     ( ) Use SAAJ API to process SOAP Request and to generate SOAP Response      |
|     ( ) Use JAXB to process SOAP Request and to generate SOAP Response          |
|     WSDL File:  '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''[Browse... ] |
|                 URL for WSDL file                                               |
|                                                                                 |
| This is an error message                                                        |
+---------------------------------------------------------------------------------+

Components:

  • Web Service Name text field - contains default value "NewWebService"
  • HTTP/XML: specifies the HTTP_BINDING type (e.g. REST web services)
  • Use direct access to XML content: javax.xml.transform.Source is used
 (schould be selected if no schemas are specified)
  • Use JAXB : javax.xml.bind.JAXBElement is used to process XML Request and to generate XML Response
 Only has sense if at least one schema file is specified: Finish button should be disabled if no XML schema is specified
  • XML Schemas: list of XML schemas that will be downloaded to project, and for which JAXB classes are generated (required when JAXB is selected)
  • <<Browse>> browse button for local XML Schemas


  • HTTP/SOAP: specifies the SOAP11_HTTP_BINDING type (SOAP/WSDL web services)
  • SOAP version: specifies the SOAP version (1.1 or 1.2)
  • Use direct access to SOAP content: javax.xml.transform.Source is used
  • Use SAAJ API : javax.xml.soap.SOAPMessage is used to process SOAP Request and to generate SOAP Response
  • Use JAXB : javax.xml.bind.JAXBElement is used to process SOAP Request and to generate SOAP Response
 Only has sense if WSDL is specified: Finish button should be disabled otherwise
  • WSDL File: specifies WSDL file that describes the service (required when JAXB is selected)
  • <<Browse>> browse button for WSDL file


New Document Centric Web Service Client

+-------------------------------------------------------------------------------- +
|                                                                                 |
| Web Service Client Name: |_NewWebServiceClient'''_''''''_''''''_''''''_''''''_''''''_'''__| |
|                                                                                 |
| Project:  |_ModuleX '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''___| |
| Location: |_Source Packages'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''v| |
| Package:  |_com.acme'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''__v| |
|                                                                                 |
| ------------------------------------------------------------------------------- |
| Select the format of the messages on the wire :                                 |
|                                                                                 |
| (*) HTTP/XML (plain XML documents used to transfer data, e.g.REST WS)           |
|     (*) Use direct access to XML content (javax.xml.transform.Source)           |
|     ( ) Use JAXB to generate XML Request and to process XML Response            |
|         XML Schemas:'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''' [Browse... ] |
|                     URL's for XML schemas specifying XML documents              |
|                     use comma (,) to separate multiple schemas                  |
|                                                                                 |
| ( ) HTTP/SOAP                                      SOAP Version: (*)1.1  ( )1.2 |
|     (*) Use direct access to SOAP content (javax.xml.transform.Source)          |
|     ( ) Use SAAJ API to generate SOAP Request and to process SOAP Response      |
|     ( ) Use JAXB to generate SOAP Request and to process SOAP Response          |
|     WSDL File:  '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''[Browse... ] |
|                 URL for WSDL file                                               |
|                                                                                 |
| This is an error message                                                        |
+---------------------------------------------------------------------------------+

Components:

  • Web Service Client Name text field - contains default value "NewWebServiceClient"
  • HTTP/XML: specifies the HTTP_BINDING type (e.g. REST web services)
  • Use direct access to XML content: javax.xml.transform.Source is used
 (schould be selected if no schemas are specified)
  • Use JAXB : javax.xml.bind.JAXBElement is used to process XML Request and to generate XML Response
 Only has sense if at least one schema file is specified: Finish button should be disabled if no XML schema is specified
  • XML Schemas: list of XML schemas that will be downloaded to project, and for which JAXB classes are generated (required when JAXB is selected)
  • <<Browse>> browse button for local XML Schemas


  • HTTP/SOAP: specifies the SOAP11_HTTP_BINDING type (SOAP/WSDL web services)
  • SOAP version: specifies the SOAP version (1.1 or 1.2)
  • Use direct access to SOAP content: javax.xml.transform.Source is used
  • Use SAAJ API : javax.xml.soap.SOAPMessage is used to generate SOAP Request and to process SOAP Response
  • Use JAXB : javax.xml.bind.JAXBElement is used to generate SOAP Request and to process SOAP Response
 Only has sense if WSDL is specified: Finish button should be disabled otherwise
  • WSDL File: specifies WSDL file that describes the service (required when JAXB is selected)
  • <<Browse>> browse button for WSDL file


Author: Milan Kuchtiak


Comments

  • My first impression - wizards are too complicated and they contain a lot of text which will not fit well to the current (preferred) size of New File wizards
  • Some other options to consider (for both wizards):
    1. Split the wizard into two distinct ones - one for HTTP/XML Doc. oriented ws/ws client and the second for HTTP/SOAP Doc. oriented ws/ws client
 - does not make sense, IMHO
    1. Split the wizard into few panels/steps where the basic panel will be:
+-------------------------------------------------------------------------------- +
|                                                                                 |
| Web Service Name: |_NewWebService'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''| |
|                                                                                 |
| Project:  |_ModuleX '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''___| |
| Location: |_Source Packages'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''v| |
| Package:  |_com.acme'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''__v| |
|                                                                                 |
| ------------------------------------------------------------------------------- |
| Select the format of the messages on the wire :                                 |
|                                                                                 |
| (*) HTTP/XML (plain XML documents used to transfer data, e.g.REST WS)           |
| ( ) HTTP/SOAP 1.1                                                               |
| ( ) HTTP/SOAP 1.2                                                               |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
| This is an error message                                                        |
+---------------------------------------------------------------------------------+


2a) There will be one embedded panel in this basic panel which will allow user to select other options relevant to selected format of the message, for example if HTTP/SOAP 1.2 will be selected then the wizard will look like:

+-------------------------------------------------------------------------------- +
|                                                                                 |
| Web Service Name: |_NewWebService'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''| |
|                                                                                 |
| Project:  |_ModuleX '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''___| |
| Location: |_Source Packages'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''v| |
| Package:  |_com.acme'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''__v| |
|                                                                                 |
| ------------------------------------------------------------------------------- |
| Select the format of the messages on the wire :                                 |
|                                                                                 |
| ( ) HTTP/XML (plain XML documents used to transfer data, e.g.REST WS)           |
| ( ) HTTP/SOAP 1.1                                                               |
| (*) HTTP/SOAP 1.2                                                               |
|                                                                                 |
|                                                                                 |
|     (*) Use direct access to SOAP content (javax.xml.transform.Source)          |
|     ( ) Use SAAJ API to generate SOAP Request and to process SOAP Response      |
|     ( ) Use JAXB to generate SOAP Request and to process SOAP Response          |
|     WSDL File:  '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''[Browse... ] |
|                 URL for WSDL file                                               |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
| This is an error message                                                        |
+---------------------------------------------------------------------------------+


2b) There will be next step in the wizard with "advanced" options related to the format of message chosen in the first step/basic wizard

  • in the basic panel user will be allowed to press Finish button to finish the wizard with default options (by default Use direct access to ... will be used)
  • the Next button will be enabled as well and after pressing it user will see eg. following panel:
+-------------------------------------------------------------------------------- +
|                                                                                 |
| Format of the Message: |_HTTP/SOAP 1.2'''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''| |
|                                                                                 |
|                                                                                 |
|     (*) Use direct access to SOAP content (javax.xml.transform.Source)          |
|                                                                                 |
|     ( ) Use SAAJ API to generate SOAP Request and to process SOAP Response      |
|                                                                                 |
|     ( ) Use JAXB to generate SOAP Request and to process SOAP Response          |
|                                                                                 |
|     WSDL File:  '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''[Browse... ] |
|                 URL for WSDL file                                               |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
|                                                                                 |
| This is an error message                                                        |
+---------------------------------------------------------------------------------+
  • where Format of the Message text field will be uneditable and will show the user what (s)he has selected in previous step
  • there's also some space where we could put a brief description of each option (more TBD)

Author: Lukas Jungmann

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo