[SOAP XML] Probleem met wsdl file

Pagina: 1
Acties:

  • activeX1
  • Registratie: December 1999
  • Laatst online: 00:24
Ben bezig om via een client programma een koppeling te maken met een WSDL file. Ik heb een sample bekeken, deze werkt op dezelfde manier als ik heb ingesteld, alleen met een andere WSDL. Het probleem wat ik heb zit dus in de WSDL file.

De foutmelding van het client programma is: Error occured while analysing WSDL:
Couldn't resolve type string, namespace.
http://www.w3.org/2003/05/soap-encoding

Ik roep de WSDL file aan via de volgende link:
http://a.nl/dialogserver/services/DialogService?wsdl

De WSDL file waar het probleem ontstaat is:

<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="http://a.nl/dialogserver/services/DialogService" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://a.nl/dialogserver/services/DialogService" xmlns:intf="http://a.nl/dialogserver/services/DialogService" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="http://www.w3.org/1999/XMLSchema" xmlns:tns2="http://www.w3.org/2003/05/soap-encoding" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!--
WSDL created by Apache Axis version: 1.2alpha
Built on Dec 01, 2003 (04:33:24 EST)

-->
- <wsdl:message name="monkSelectedRequest">
<wsdl:part name="className" type="tns2:string" />
</wsdl:message>

Deze file werkt zonder problemen:

http://www.xmethods.net/sd/2001/CATrafficService.wsdl

Zelf heb ik al de SOAP specs nagelopen, en ik kan geen probleem ontdekken...Iemand een idee?

  • VyperX
  • Registratie: Juni 2001
  • Laatst online: 16-02 16:12
Wat voor client programma gaat het hier over?

De foutmelding lijkt aan te geven dat ie het type "string" niet kan resolven in die namespace. Misschien moet je een optie aanzetten dat ie namespaces ook binnenhaalt via URI's?

Probeer volgende keer ook even je XML/WSDL in [code] tags te zetten. Dat verhoogt de leesbaarheid ook. :)

My Dwarf Fortress ASCII Reward: ~~@~~####,.".D",.B""


  • activeX1
  • Registratie: December 1999
  • Laatst online: 00:24
Dank voor je reactie. Ik heb het probleem inmiddels gevonden, alleen nu nog een oplossing:

Echter het probleem is dat mijn client nog een oude versie heeft van de SOAP library.

Analyse van de WSDL file leverde op dat indien ik een oudere library in de WSDL plaats, het wel correct werkt. Het blijkt dus dat mijn client (Envox 6.1 wat de laatste nieuwe versie is) een verouderde versie van de Soap library gebruikt, namelijk degene van:

xmlns:tns2=http://www.w3.org/2001/XMLSchema
Echter de library die ik moet gebruiken is:
xmlns:tns2=http://www.w3.org/2003/05/soap-encoding
Probleem is dat ik de WSDL file niet aan kan passen, want dan werken andere clients niet meer, dus het probleem moet in Envox opgelost worden.
Is het mogelijk om op de een of andere manier in te stellen dat beide libraries gebruikt kunnen worden in de WSDL file? Of zien jullie een andere oplossing voor dit probleem?

  • VyperX
  • Registratie: Juni 2001
  • Laatst online: 16-02 16:12
De twee URI's die je aanhaalt zijn slechts namespaces. Waarschijnlijk is er is dat programma "hardcoded" ingezet hoe een namespace moet worden gebruikt.

Omdat die tweede URI niet bij het programma bekend is als namespace, zou je hem moeten zeggen dat ie die ook moet proberen te importeren.

Meestal worden namespaces niet geimporteerd, zodat het programma ook werkt als er geen internet verbinding is.

Ik heb verder geen ervaring met Envox en kon er met Google zo snel ook niks over vinden.

My Dwarf Fortress ASCII Reward: ~~@~~####,.".D",.B""