How to find wsdl version - web-services

Can any one please suggest how can I find wsdl version my web service is exposing -
snippet from wsdl -
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex"
xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy"
xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://tempuri.org/"
xmlns:wsa10="http://www.w3.org/2005/08/addressing"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
name="XXXService" targetNamespace="http://tempuri.org/">
I have gone through these web links -
https://coderanch.com/t/502335/certification/determine-wsdl-version
according to above post it's 1.2
whereas looking at this -
https://www.soapui.org/docs/soap-and-wsdl/working-with-wsdls/
SoapUI documentation says "SoapUI supports 1.1 version of the WSDL specification".
Because my wsdl loads successfully in SoapUI - could it be version 1.1?
So, I am not sure which version of wsdl (1.1/1.2/2.0) my web service is exposing.
Any suggestions please.

There are two WSDL versions: 1.1 and 2.0. A history of how these versions got to be can be found on the Wikipedia page for WSDL.
Also on that page it's a useful image of the differences between them and how to recognize the version you are dealing with:
The easiest way is to look at the root element in the XML:
if it's called <definitions> then it's a WSDL 1.1;
if it's called <description> then it's a WSDL 2.0;
Most of the WSDLs you will find out there will be version 1.1, but if the technology is newer, it might also be possible to retrieve a WSDL 2.0. See for example the answer on this post for more details about some conventions of retrieving a SOAP web service's WSDL if it provides one.

Related

Deploy Web Service using Jboss 6

I create a web service using net beans 7.1 and Jboss.
i am following the steps of this tutorial:
http://campuscurico.utalca.cl/~pabrojas/?page_id=192
But when i deploy the project with glassfish i go to:
http://localhost:8080/ProjectName/webServiceName?WSDL
And it show me the wsdl.
But when i deploy the project with Jboss 6.1 Final, and i go to the url:
http://localhost:8080/ProjectName/webServiceName?WSDL
The page show me Estado HTTP 404 - /
but when i go to the:
http://localhost:8080/ProjectName/
Show me the index jsp page
What is my problem, why i can't deploy the project with jboss?
Who can help me?.
Thanks
I do not if i need configure my web.xml
I have this web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
Have a look in the generated WSDL in your JBOSS. You can find it in your JBOSS Home directory:
JBOSS6/standalone/data/wsdl...
In the WSDL the url to your wsdl is specified in the soap:address tag.
If no wsdl is stored in your jboss you have to share some more information about your web service files.

Unable to import WSDL in to Visual Studio 2012

Trying to integrate with a PHP SOAP-based web service. The client has given me a URL to a WSDL file which seems to confirm to the W3C Standard for WSDL.
I'm using the Add Web Reference option in the Advanced Dialog to add the reference. When I add the URL, the web browser in the dialog box displays the two methods in the WSDL specification, but there is an error message in the status area on the right, and the Add Reference button is disabled.
Error message:
The document at the url http://www.NAMEHERE.com/NAME/xml/test.php?wsdl was not
recognized as a known document type.
The error message from each known type may help you fix the problem:
- Report from 'XML Schema' is 'The root element of a W3C XML Schema should be <schema> and its nam
If I run the WSDL through an online WSDL validator, it seems right and, like I say, it does appear to conform to standards.
In addition, I've tried using the the WSDL.EXE command-line and tried SOAP, SOAP12, HTTPGET and HTTPPOST protocols, each time getting the same error message.
WSDL Excerpt here:
<?xml version="1.0" encoding="ISO-8859-1"?>
<definitions xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://www.NAMEHERE.com/NAME/xml/namespace"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
targetNamespace="http://www.NAMEHERE.com/NAME/xml/namespace">
<types>
<xsd:schema targetNamespace="http://www.NAMEHERE.com/NAME/xml/namespace">
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<xsd:import namespace="http://schemas.xmlsoap.org/wsdl/"/>
<xsd:complexType name="AddressWO">
....
The cilent says that they haven't experienced this issue with any other partners, who are all able to integrate successfully. Albeit, they are PHP to PHP.
I've searched SO and am unable to find the same issue explicity (or any suitable answer).
Any ideas?
After spending a fair amount of time on this, it turns out that the WSDL wasn't perfect afterall. Our business partner needed to make a couple of minor corrections to the WSDL before Visual Studio could import it.
The issue was that they had a minOccurs attribute on an element, which was invalid in that scenario.
The thing to note here is that several online validators said the WSDL was valid, as do the PHP clients we tried.
Then, we used the WLIMPORT program within JDK 1.6+ and this gave a very detailed list of errors in the WSDL, pointing to the exact cause of the issue.
So, our business partner corrected the specification at their end and now Visual Studio imports the WSDL successfully.
Hope this helps.

Invocation of TIBCO web service from HP Service Manager is causing error

For the integration purpose, we need to consume a web service exposed by TIBCO in HP SM.
In HP SM, we consume a web service by using a utility called wsdl2js, which create JavaScript using wsdl url. I am able to use wsdl2js but when I invoke the web service, I am able to see request xml getting formed in SM but in response I am getting an error message"
Error calling method: doSoapRequest in class:com/hp/ov/sm/server/utility/SoapClient
Exception(com.sun.xml.messaging.saaj.SOAPExceptionImpl:
java.security.PirvilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl:
Invalid Content-type:text/html.Is this an error message instead of a SOAP response?
In the wsdl file, there are following schemas:
<?xml version="1.0" encoding="UTF-8"?>
<!--Created by TIBCO WSDL-->
<wsdl:definitions xmlns:ns1="http://www.tibco.com/schemas/TIGIaaS-IP085/WSDL and XSD/Schema.xsd4" xmlns:tns="http://xmlns.example.com/1372306950675/CreateUpdateIncidentImpl/BusinessProcesses/_00-InputChannels" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns0="http://www.tibco.com/schemas/TIGIaaS-IP085v0.2/WSDL and XSD/Schema.xsd2" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap12/" name="Untitled" targetNamespace="http://xmlns.example.com/1372306950675/CreateUpdateIncidentImpl/BusinessProcesses/_00-InputChannels">
<wsdl:types>
<xs:schema xmlns="http://www.tibco.com/schemas/TIGIaaS-IP085v0.2/WSDL and XSD/Schema.xsd2" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.tibco.com/schemas/TIGIaaS-IP085v0.2/WSDL and XSD/Schema.xsd2" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="HPSM">
Could this error is because SM which is installed on a different unix server than TIBCO is not able to read schemas?
I have resolved this issue.
Issue was with SOAP Version. SOAP Version of wsdl provided by TIBCO was 1.2 and HP SM was expecting 1.1
SOAP 1.2 supports application/soap+xml, while SOAP 1.1 supports text/xml. That is why I was getting content-type error.

What is the XML format for an item for the Sitecore Webservice

I am trying to use the built in web service in Sitecore 6.5 (.../sitecore/shell/webservice/service.asmx)
There is PDF that describes the commands, but it does not specify the format for inserting/updating items. It claims one can simply use the format when doing a GetXml request, but I have found that not to be true from my testing.
I have tried a number of variations, both trying with an or just single fields as suggested by this blog, with no luck and unfortunately the webservice does not complain about the input, it always responds "OK" with no effect.
The full request (as what I am looking at now)
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<Save xmlns="http://sitecore.net/visual/">
<xml>
<sitecore>
<field itemid="{7CCE4419-E8BD-45F4-9B9C-625E220C59A1}"
fieldid="{3F4B20E9-36E6-4D45-A423-C86567373F82}"
language="en"
version="1">
<content>A title from service</content>
</field>
</sitecore>
</xml>
<databaseName>master</databaseName>
<credentials><!-- removed --></credentials>
</Save>
</soapenv:Body>
If anyone knows what the format is that would be great.
If you are using Sitecore 6.5 then you can use the Item Web API, this should give you access to everything you need via JSON REST services.
There was a great response from Kevin Obee with further links, but also have a read of the following:
Sitecore Item Web API and Json.Net Test Drive
New features in Sitecore 6.6 – Webinar
I normally write my own webservice if I want to do some modifications to Sitecore items and found it a much more flexible way because I mostly want at least just a bit more functionality then the standard webservice has to offer. But be aware that you cannot serialize the Sitecore.Data.Items.Item class so sending an Item object through Soap is not going to work.

I am looking SOAP services which i want to do example by client

I am just trying to understand how to query on SOAP services so are there any SOAP-based services which i can play with it ?
There are a load of available SOAP web services here...
http://www.webservicex.net/WS/wscatlist.aspx
There are many SOAP based services available. You could write your own for testing.
Find More details here --> SOAPClient
Example:
SOAP Endpoint URL: http://www.SoapClient.com/xml/SQLDataSoap.WSDL
SOAP Action: /SQLDataSRL
Method Names: ProcessSRL
WSDL URL: http://www.SoapClient.com/xml/SQLDataSoap.wsdl
Parameters:
1. SRLFile: The name of the Service Request Language File, use /xml/WEB.SRI for web searches.
2. RequestName: The name of the search engine, use Altavista, Yahoo, Excite, etc.
3. key: The keywords to be searched for.
Sample SOAP Message
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<mns:ProcessSRL xmlns:mns="http://www.SoapClient.com/xml/SQLDataSoap.xsd">
<SRLFile xsi:type="xsd:string">/xml/web.sri</SRLFile>
<RequestName xsi:type="xsd:string">Altavista</RequestName>
<key xsi:type="xsd:string">SOAP</key>
</mns:ProcessSRL>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>