Fouten bij genereren C# proxy bg0310_beantwoordVraag_vraagAntwoord.wsdl

Dit is een statische kopie van het eerdere discussie.kinggemeenten.nl.
Nieuwe discussies kunnen in de GitHub repository 'StUF standaarden' als issue worden opgevoerd.

7 reacties / 0 nieuw
Barend Tempelman
Fouten bij genereren C# proxy bg0310_beantwoordVraag_vraagAntwoord.wsdl

Beste,

Is het mogelijk een gegenereerde proxyclass beschikbaar te stellen voor de "bg0310_beantwoordVraag_vraagAntwoord.wsdl" ?

Het is mij nog niet gelukt om via svcutil zonder fouten een classe te genereren.

De "truc" welke ik tot nu toe uitgehaald heb is de volgende:
-Via soapUI de wsdl inladen (eerst het commentaar verwijderen uit de xsd's anders kan hij niets genereren)
-STUB hosten in soapui
-Via svcutil het commando: scvutil.exe /n:*,[gewenste namespace] http://localhost/mockservice?WSDL

De volgende fouten treden op:

Attempting to download metadata from 'http://localhost/mockservice?WSDL' using WS-Metadata Exchange or DISCO.
Error: There was a validation error on a schema generated during export:
    Source:
    Line: 2 Column: 3
   Validation Error: The global attribute 'http://www.w3.org/XML/1998/namespace:
lang' has already been declared.


Error: There was a validation error on a schema generated during export:
    Source:
    Line: 3 Column: 3
   Validation Error: The global attribute 'http://www.w3.org/XML/1998/namespace:
space' has already been declared.


Error: There was a validation error on a schema generated during export:
    Source:
    Line: 11 Column: 3
   Validation Error: The global attribute 'http://www.w3.org/XML/1998/namespace:
base' has already been declared.


Error: There was a validation error on a schema generated during export:
    Source:
    Line: 12 Column: 3
   Validation Error: The global attribute 'http://www.w3.org/XML/1998/namespace:
id' has already been declared.


Error: There was a validation error on a schema generated during export:
    Source:
    Line: 13 Column: 3
   Validation Error: The attributeGroup 'http://www.w3.org/XML/1998/namespace:specialAttrs' has already been declared.


Error: There was a validation error on a schema generated during export:
    Source: http://localhost/mockservice?WSDL&interface=SOAPBeantwoordVraag&part=bg0...
    Line: 494 Column: 8
   Validation Error: Undefined complexType 'http://www.opengis.net/gml:SurfacePropertyType' is used as a base for complex type extension.


Error: There was a validation error on a schema generated during export:
    Source: http://localhost/mockservice?WSDL&interface=SOAPBeantwoordVraag&part=bg0...
    Line: 501 Column: 8
   Validation Error: Undefined complexType 'http://www.opengis.net/gml:PointPropertyType' is used as a base for complex type extension.


Error: There was a validation error on a schema generated during export:
    Source: http://vmwin2003se32b:8088/mockSOAPBeantwoordVraag?WSDL&interface=SO
APBeantwoordVraag&part=bg0310_simpleTypes.xsd
    Line: 508 Column: 8
   Validation Error: Undefined complexType 'http://www.opengis.net/gml:SurfacePropertyType' is used as a base for complex type extension.


Error: Cannot import wsdl:portType
Detail: An exception was thrown while running a WSDL import extension: System.ServiceModel.Description.XmlSerializerMessageContractImporter
Error: The datatype 'http://www.opengis.net/gml:PointPropertyType' is missing.
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://www.egem.nl/StUF/sector/bg/0310']/wsdl:portType[@name='BeantwoordVraag']


Error: Cannot import wsdl:binding
Detail: There was an error importing a wsdl:portType that the wsdl:binding is dependent on.
XPath to wsdl:portType: //wsdl:definitions[@targetNamespace='http://www.egem.nl/StUF/sector/bg/0310']/wsdl:portType[@name='BeantwoordVraag']
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://www.egem.nl/StUF/sector/bg/0310']/wsdl:binding[@name='SOAPBeantwoordVraag']


Error: Cannot import wsdl:port
Detail: There was an error importing a wsdl:binding that the wsdl:port is dependent on.
XPath to wsdl:binding: //wsdl:definitions[@targetNamespace='http://www.egem.nl/StUF/sector/bg/0310']/wsdl:binding[@name='SOAPBeantwoordVraag']
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://www.egem.nl/StUF/sector/bg/0310']/wsdl:service[@name='BeantwoordVraag']/wsdl:port[@name='BeantwoordVraag']

BVD,

 

Barend

Barend Tempelman

Iemand?

Raymond Bolder

Hallo Berend,

Ik liep hier in het begin ook tegenaan.
Hoe ik het heb opgelost is door de XSD resolver te grbuiker die door KING wordt aangeboden.
Deze genereerd een set aan xsd's die je goed kunt gebruiken met visual studio.
Vervolgens kun je met xsd.exe of wsdl.exe de interface genereren die je vervolgens kunt gebruiken in je project.

Groet,

Raymond

Rikus Terveer

Ik sluit mij aan bij de vraag van Barend; kan niemand de proxy classes (is meer dan alleen de datatypen uit de XSD's) of nog beter een heldere stapsgewijze werkwijze om deze te verkrijgen beschikbaar stellen? Een dergelijk antwoord nog niet gevonden.

Ook ik heb van alles geprobeerd, maar tot dusver zonder (volledig) succes. Het probleem zit hem denk ik ook niet zozeer in tools die ontwikkelaars gebruiken, maar eerder in de complexiteit van stuf-zkn en, die indruk wekken de tools, de niet volledige 'juistheid' of W3C compatibiliteit daarvan. Eerlijkheidshalve voor mijzelf speelt daarnaast ook domweg een gebrek aan kennis;  met een 'werkbare' wsdl kan ik probleemloos een webservice client maken, maar ik zit onvoldoende in de 'XSD/WSDL wereld' om bij problemen alle onderliggende 'xsd constucties' /schema's volledig te kunnen doorgronden. Uitgebreide kennis daarvan zou m.i. in principe ook niet nodig moeten zijn. Misschien ligt hier een uitdaging voor GEMMA? Door ontwikkelaars iets meer verdergaand te faciliteren hoeft niet iedere ontwikkelaar afzonderlijk het wiel uit te vinden wat uiteindelijk ook uw achterban kosten bespaart en toepassing van de stuf-zkn als standaard vereenvoudigd (ik zie nu soms 'eigen' services als workaround in gebruik). 

Rikus Terveer

Bij deze een drietal complete C# proxy classes; 'BeantwoordVraag', 'OntvangAsynchroon_mutatie' en 'VrijeBerichten'.

Bij afleiden hiervan is gebruik gemaakt van een in bijgevoegd '.zip' bestand aanwezige 'platgeslagen' versie van stuf-zkn. Het is helaas niet duidelijk hoe deze tot stand is gekomen (lijkt niet volledig/alleen op basis van de XSD resolver). De classes zelf zijn gegenereerd m.b.v. de 'wsdl' tool en daarna toegevoegd aan een project. Toevoegen van een webservice aan een project op basis van de eveneens in het '.zip' bestand aanwezige '.wsdl' bestanden gaf (bij mij) wel weer problemen. 

Bijlage

ProxyClass.zip
Joost Wijnings

Volgens mij komt dat mede doordat de standaard wsdl van KING een reference heeft naar de StUF-types, maar die is al 'platgeslagen' via de msg xsd's. Dus volgens mij moet je de wsdl echt met de hand hacken.

Beste oplossing zou zijn dat er een versie van de XSD-resolver komt die ook Wsdl's kan resolven...

Michel van Kasteren

Dag Mensen,

StUF 3.10 BG maar weer opgepakt. Nog steeds krijg ik geen goede build.  Bij genereren van de sourcecode krijg nog twee fouten:

Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 4.0.30319.17929]
Copyright (C) Microsoft Corporation. All rights reserved.
Schemavalidatiefout: Ongeldige syntaxis in schema met targetNamespace=http://www.egem.nl/StUF/sector/bg/0310. Het gegevenstype van de eenvoudige inhoud is geen geldige beperking van het complexe basistype. Regel 33591, positie 11.
Schemavalidatiefout: Ongeldige syntaxis in schema met targetNamespace=http://www.egem.nl/StUF/sector/bg/0310. Het gegevenstype van de eenvoudige inhoud is geen geldige beperking van het complexe basistype. Regel 33817, positie 11.
Warning: Schema could not be validated. Class generation may fail or may produce incorrect results.
Writing file 'csStUFbg0310vraagAntwoord.cs'.
 

In de bijlage de gegenereerde code.

Geprobeerd met en zonder resolved xsd's ook via SoapUI. Als ik uiteindelijk in Visual Studio  wil builden krijg ik altijd dezelfde fout:

Er is een fout opgetreden bij het weergeven van type SurfacePropertyType.

Heeft iemand de gouden tip?

 

Bijlage

csStUFbg0310vraagAntwoord.zip