Using DI WSDL in Visual Studio 2008

I have done many searches of the forum and have read and been educated on a lot of stuff regarding the usage of the Axis wsdl with .Net and some of the issues but beside the fact my head is spinning wildly I am having an issue in which I can not find the answer to and hopefully someone can help me with.

We are running XI 3.1 of Data Services, so I think that translates into 12.1 for DI.

I am using the following url to get my WSDL http://devserver:28080/DataServices/servlet/webservices?ver=2.0&wsdlxml

I have attempted to reference this directly in VS and it appears to reconize the url but when added it is not usable.

So I found information that indicated VS or Axis doesn’t create one of the files and that I need to WSDL.exe.

This is where the problem is coming in. When I run WSDL.exe against the wsdl I downloaded I get the following error:


Warning: This web reference does not conform to WS-I Basic Profile v1.1.
R2304: Operation name overloading in a wsdl:portType is disallowed by the Profile. A wsdl:portType in a DESCRIPTION MUST have operations with distinct values for their name attributes. Note that this requirement applies only to the wsdl:operations wi
ve wsdl:operations with names that are the same as those found in other wsdl:portTypes.
  -  Operation 'David_Test_WF' on binding '#document' from namespace 'http://www.businessobjects.com'.
  -  Operation 'David_Test_WF' on portType 'Batch_Jobs' from namespace 'http://www.businessobjects.com'.

R2710: The operations in a wsdl:binding in a DESCRIPTION MUST result in wire signatures that are different from one another. An endpoint that supports multiple operations must unambiguously identify the operation being invoked based on the input mess
 the operations specified in the wsdl:binding associated with an endpoint have a unique wire signature.
  -  Input message 'David_Test_WF_Input' from namespace 'http://www.businessobjects.com' has wire signature 'http://www.businessobjects.com/DataServices/ServerX.xsd:David_Test_WF_GlobalVariables'.
  -  Input message 'David_Test_WF_Input' from namespace 'http://www.businessobjects.com' has wire signature 'http://www.businessobjects.com/DataServices/ServerX.xsd:David_Test_WF_GlobalVariables'.

For more details on the WS-I Basic Profile v1.1, see the specification
at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.

Error: Schema item 'element' named 'David_Test_WF_GlobalVariables' from namespace 'http://www.businessobjects.com/DataServices/ServerX.xsd'. The global element 'http://www.businessobjects.com/DataServices/ServerX.xsd:David_Test_WF_GlobalVariables' ha
  - The global element 'http://www.businessobjects.com/DataServices/ServerX.xsd:David_Test_WF_GlobalVariables' has already been declared.

Any help would be appreciated.

Thanks.


estaup (BOB member since 2002-10-15)

I was try to check this with VS 2003, but its crashing, not familiar with .Net

but try following

is the same batch job published 2 times form DS ? there is a check for this while adding eb service, so it shouldn’t be happening or bug

remove all the batch jobs from web service and try to use the WSDL with the default operations that are available in DS web service ? does that fails with the same error

if it is successful, add a single batch job as web service and try again, if it fails, check difference in the declaration of batch job operation and other default operation for example connection operation

use a sample WSDL , you can search in http://www.ws-i.org for that and try to use that WSDL if that is successful, compare that WSDL to DS WSDL and modify the DS WSDL as per that and see if that works


manoj_d (BOB member since 2009-01-02)

Did find that there were duplicate jobs showing up in the WSDL. The jobs were from the training class the week before.

Visual Studio was not complaining about the duplication at all but did not reconize the methods, etc. after being added.

Now I am trying to find documentation on the methods as what the WSDL shows and what Visual Studio is expecting is different.

For example the Get_BatchJob_List() is indicated not to have any parameters needed and will return a string.

But when I try to use in VS, the compiler indicates that parameters are required.

Trying to find SDK info for DS on SAP but no luck so far navigating that horrible site.


estaup (BOB member since 2002-10-15)

then this is a bug ? how did same job got published as webservice ? do you have multiple repositroy registered with web server and some of them have the same job name or same job ? in the published web service list what is the repo name it is displaying ?

let me check in which section of technical manual these services are documented

you can also try creating a web service datastore, and use the same WSDL and import the function in DI and check the input schema, I don’t think this particular service 'Get_BatchJob_List()" expects any input, if you have enabled session parameter, then it would expect the session info in the SOAP header


manoj_d (BOB member since 2009-01-02)

Yes each designer has their own repository so during the training session on site, everyone stepped through the processes at the same time and named everything the same.

Not a big deal as this will not be an issue moving forward.

I was thinking that the parameter value that is being exected is the sessionId. I will try this.


estaup (BOB member since 2002-10-15)