nsessl / schema

XML schémata pro Národní standard pro elektronické systémy spisové služby
3 stars 1 forks source link

chyba při implementaci WSDL ve Visual Studiu 2022 #71

Closed JiriAnsorge closed 1 week ago

JiriAnsorge commented 1 year ago

Jsem z policejního prezidia oddělení ETŘ a implementuji webové služby NSESSS. Z webu jsem si stáhl letošní popis WSDL a přiložené XSD. Nové WSDL se mi nedaří přidat do projektu (Visual Studio 2022), po přidání reference obdržím chybu: Failed to generate code for the service reference. Vytvoří se prázdný namespace ve kterém nic není (žádné operace). Staré služby WSDL jsem dříve bez problému do projektu přidal. Zkoušel jsem pomocí knihoven WSDL.EXE a SVCUtil.EXE vygenerovat (z WSDL) třídy pro c#, ale obě knihovny mi vypisují chyby ohledně WSDL.

OAS-Prochazka commented 1 year ago

Dobrý den, autor schemat sdělil, že při generování tříd z WSDL souboru se jde dostat k chybovému hlášení, kde Visual Studio hlásí chybu, která ale ve schématu není. Snažíme se zjistit, co přesně Visual Studiu vadí a případně schemata upravíme tak, aby se logicky nezměnila, ale Visual Studio je zvládlo zpracovat.

JiriAnsorge commented 11 months ago

Dobrý den, podařilo se nějak pokročit s problémem ve Visual Studiu 2022?

marek-vavra commented 11 months ago

Také bych se připojil k dotazu, kdy lze očekávat verzi, kteraábude mít validní strukturu, tj ze které bude možné generovat proxy třídy. Děkuji.

OAS-Prochazka commented 11 months ago

Dobrý den,

zatím jen „off-record“ dílčí informace, kterou se mi povedlo získat od odborníků

Schéma patrně není špatně, jen nástroj od VS asi nepočítá s rekursí ve schématu. Zkoušeli jsme to obejít, ale ještě jsme prakticky neověřili, zda postup je správný.

Změnili jsme ve schématu prvek gSoucastTypovehoSpisu z group na complexType Ve schématu jsme rekursivní Soucast prvek nahradili nouzově/dočasně textovým elementem SoucastTxt @.***

VS poté již vygenerovalo třídy.

Následně jsme v nich vrátili zpět správný typ gSoucastTypovehoSpisuSoucasti a správný název prvku Soucast:

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.1.0")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace=http://www.mvcr.cz/nsesss/2023/api)]
public partial class gSoucastTypovehoSpisuSoucasti
{
    // zde jsem zpětně upravil správný název a správný typ
    private gSoucastTypovehoSpisu[] soucastField;

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("Soucast", Order=0)]
    public gSoucastTypovehoSpisu[] Soucast
    {
        get
        {
            return this.soucastField;
        }
        set
        {
            this.soucastField = value;
        }
    }
}

Ale celý export a import ještě nemáme napsaný, takže toto řešení nemáme prakticky ověřené.

Bude vám to k něčemu?

Roman Procházka

From: JiriAnsorge @.> Sent: Friday, October 20, 2023 1:24 PM To: nsessl/schema @.> Cc: Procházka Roman @.>; Comment @.> Subject: Re: [nsessl/schema] chyba při implementaci WSDL ve Visual Studiu 2022 (Issue #71)

Dobrý den, podařilo se nějak pokročit s problémem ve Visual Studiu 2022?

— Reply to this email directly, view it on GitHubhttps://github.com/nsessl/schema/issues/71#issuecomment-1772561943, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BAWKEITAXMAZNUSTI52CT3LYAJNO3AVCNFSM6AAAAAA34TIFEWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZSGU3DCOJUGM. You are receiving this because you commented.Message ID: @.***>

OAS-Prochazka commented 1 week ago

Problém byl odstraněn v národním standardu platném od 1. 9. 2024.