Link to home
Start Free TrialLog in
Avatar of JimBeveridge
JimBeveridgeFlag for United States of America

asked on

"Unable to import binding" error

I need help solving an error using wsdl.exe under Visual Studio 2008. The wsdl and xsd files are from a Java implementation and are in production use with that Java code.

The error I'm getting is:
Error: Unable to import binding 'UserAccountServiceHttpBinding' from namespace 'http://useraccount.test.com/v1_0'.
  - Unable to import operation 'authenticate'.
  - The element 'http://useraccount.test.com/api/v1_0:authenticateRequest' is missing.

However, an element entry does exist for authenticateRequest in the xsd file.

Any suggestions would be greatly appreciated.

What I hope is relevant code is below. (Apologies in advance - I cannot post the entire wsdl file because it's NDA. So I'll post what I can.)

top of xsd file
<?xml version="1.0" encoding="utf-8" ?>
<schema xmlns:tns="http://useraccount.test.com/api/v1_0"
	xmlns:common="http://common.test.com/v1_0"
	xmlns:commonAPI="http://common.test.com/api/v1_0"
	xmlns:model="http://useraccount.test.com/v1_0"
	elementFormDefault="qualified"
	targetNamespace="http://useraccount.test.com/api/v1_0"
	xmlns="http://www.w3.org/2001/XMLSchema">
	<import schemaLocation="common_api_1.0.xsd"
		namespace="http://common.test.com/api/v1_0" />
	<import schemaLocation="common_1.0.xsd"
		namespace="http://common.test.com/v1_0" />
	<import schemaLocation="useraccount_service_1.0.xsd"
		namespace="http://useraccount.test.com/v1_0" />
	<!--service api defination-->
	<element name="token" type="common:OID" />
	<element name="authenticateRequest" type="tns:AuthenticateRequest" />
	<element name="authenticateResponse" type="tns:AuthenticateResponse" />
	<element name="impersonateRequest" type="string" />
	<element name="impersonateResponse" type="string" />
	<element name="validateTokenRequest" type="tns:ValidateTokenRequest" />
	<element name="validateTokenResponse" type="tns:ValidateTokenResponse" />

Open in new window


excerpt from wsdl file

	<wsdl:message name="authenticateRequest">
		<wsdl:part name="authenticateRequest" element="api:authenticateRequest" />
	</wsdl:message>
	<wsdl:message name="authenticateResponse">
		<wsdl:part name="authenticateResponse" element="api:authenticateResponse" />
	</wsdl:message>

[snip]

	<wsdl:portType name="UserAccountServicePortType">
		<wsdl:operation name="authenticate">
			<wsdl:documentation>
				This API is used ...
			</wsdl:documentation>
			<wsdl:input name="authenticateRequest" message="tns:AuthenticateRequest">
			</wsdl:input>
			<wsdl:output name="authenticateResponse" message="tns:AuthenticateResponse">
			</wsdl:output>
			<wsdl:fault name="serviceFaultInfoException" message="tns:serviceFaultInfoException">
			</wsdl:fault>
		</wsdl:operation>

Open in new window

Avatar of ChristoferDutz
ChristoferDutz
Flag of Germany image

I would assume that there is an element authenticateRequest but it is in the wrong namespace.
ASKER CERTIFIED SOLUTION
Avatar of JimBeveridge
JimBeveridge
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of JimBeveridge

ASKER

Found my own answer to the problem.