RE: [dss] DSS WSDL

From
"Fdward Rhallow"
Date
2006-06-01T12:24:21+00:00
ID
009b01c68576$4b75e310$0302a8c0@inspiron
Thread
RE: [dss] DSS WSDL
Carlos, Nick, and JC,

 

    I believe the whole WSDL issue is 
isolated to the binding decisions an implementor decides upon. DSS does not 
mandate SOAP or anything else for that matter. I agree that for implementations 
using SOAP and Web Services, having WSDLs certainly helps developers. However 
you end up getting into very product and toolkit-specific issues with regards to 
subtle differences in how differing WSDL-generator toolkits react. We on the EPM 
team also release "sample clients" for popular Web Service toolkits. Most 
require "tweaking" to get things to work. Invariably things like xs:import 
xs:include schemaLocation etc ... work with one and not the 
other. 

 

   I do not believe 
these toolkit-specific issues should not creap into the specification or 
TC's published content. What of XML/RPC ? What of REST ? What of other 
bindings ? These are the topic of an implementation's "Release Notes" wouldn't 
you say ? The same does for the religious rpc vs doc/lit debate. In fact 
there are numerous ways to mitigate risk by good xsd / wsdl separartion. Again 
that is only a SOAP debate. DSS does not mandate one binding over 
another.

 

Ed  

From: Carlos González-Cadenas 
[mailto:] 
Sent: June 1, 2006 6:39 
AM
To: ; 'Nick Pope'; 'Juan Carlos 
Cruellas'
Cc: 'DSS TC List'
Subject: [dss] DSS 
WSDL

Nick, 
JC,

 

Regarding 
the WSDL issue, I want to give you some feedback obtained in the last 
months

 

  
As you 
  already know, we have an implementation of DSS Core (CD3 version) and several 
  other profiles (like timestamping, XAdES and our private ones XSS, Archive and Compound) 
  running for several big clients here in Spain. At 
  integration level (people wishing to access the services deployed in our 
  infrastructures), we have been facing some difficulties mainly due to the 
  typical misunderstanding: “if there’s no WSDL then there’s no web-service”. I 
  recommend publishing the WSDL along with the XSD in the TC’s page, as this will impact in a relevant manner in the 
  degree and speed of adoption of DSS. 

 

  
In the 
  interop work, I would consider adding a specific 
  chapter for WSDL-based integration (we’re doing some work on that for several 
  platforms, like Java (Axis), .NET and PHP). That is, evaluating how client 
  technologies handle DSS WSDL. 

 

  
We need 
  to address how to handle profiles regarding to their specific WSDLs. 

 

Andreas,

 

Thanks for 
your WSDL file. I’ve been testing it in the last days, and have several 
comments

 

  
With 
  XMLBeans 2.1.0, the <xs:import> for the WSDL’s 
  XSD is not working, and therefore XMLBeans is not 
  generating classes. Embedding the schema into the <types> section of the 
  WSDL allows XMLBeans to generate the classes 
  correctly. 

 

  
With 
  Axis 1.4, I was able to generate the classes, but, as you said in your mail, 
  the code does not compile. Luckily, the errors (changing the order of two 
  params in the constructors of RequestBaseType and ResponseBaseType) can be fixed very 
  easily. 

 

  
With 
  respect to the style/use for the web-service, I recommend to change rpc/literal (as present in your WSDL) to the one called 
  “document/literal wrapped”. I have tested the DOC/LIT wrapped approach with 
  Axis and works perfectly. The attached dss.wsdl 
  reflects that change to doc/lit wrappedn 

 

  
    
Example 
    of the XML generated with the RPC/LIT (with the operation “verify”). Note 
    that the “verify” and “verifyRequest” elements are 
    redundant. 

            
<soap:envelope>

                        
<soap:body>

                                   
<verify>

                                               
<dss:VerifyRequest>

                                                           
….

                                               
</dss:VerifyRequest>

                                   
<verify>

                        
</soap:body>

            
</soap:envelope>

 

  
    
Example 
    of the XML generated with the DOC/LIT wrapped. In my opinion the most 
    natural way to do it. 

            
<soap:envelope>

                        
<soap:body>

                                   
<dss:VerifyRequest>

                                   
            
….

                                   
</dss:VerifyRequest>

                        
</soap:body>

            
</soap:envelope>

 

            
If anyone needs some help with style/use for webservices, a good article for looking at the differences 
between styles/uses for web services can be found 
at:

http://www-128.ibm.com/developerworks/webservices/library/ws-whichwsdl/

 

 

Kind 
regards,

Carlos

 

 

Carlos 
González-Cadenas
Chief 
Security Officer

Diagonal 188-198 Planta 
2
08018 Barcelona
tel: 902 303 393
fax: 902 303 
394

www.netfocus.es