[gelöst] Veröffentlichte web services erscheinen nicht

29. März 2011 15:09

Hallo zusammen,

ich habe mir gerade lokal NAV 2009 installiert, um mal ein wenig mit den web services testen zu können.
Ich scheitere aber schon ziemlich am Anfang :-(

http://localhost:7047/DynamicsNAV/WS/Services

bei oben gezeigtem link sehe ich nur folgendens:
Code:
- <discovery xmlns="http://schemas.xmlsoap.org/disco/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <contractRef ref="http://localhost:7047/DynamicsNAV/WS/SystemService" xmlns="http://schemas.xmlsoap.org/disco/scl/" />
  </discovery>


die web services, die ich in der Tabelle Web Service veröffentliche tauche hier nicht auf.

Hat jemand einen Tipp für mich?

Gruß
Alexander
Zuletzt geändert von zannaleer am 6. April 2011 16:29, insgesamt 1-mal geändert.

Re: Veröffentlichte web services erscheinen nicht

29. März 2011 17:36

Hi Alexander,


hast du auch in der Form 810 den Haken "Veröffentlichen" auch gesetzt? Ich denke nicht:-)



Gruß
Aydin

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 13:32

Hallo Aydin,

ja, die Haken habe ich gesetzt, trotzdem taucht da nichts auf.

Gruß
Alexander

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 14:42

Wenn Du die Webservices einrichtest, bist Du aber schon mit der richtigen DB verbunden?

Volker

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 14:49

hi Alexander,

wie Volker bereits sagt, kontrollier deine CustomSettingsConfig Datei.
Kann sein, dass du die Datenbank eingetragen hast, aber den Webservice-Dienst nicht neugestartet hast.
Neustart hilft immer:-)



Gruß
Aydin

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 15:50

Hallo Aydin,
hallo Volker,

meiner Meinung nach sieht die CustomSettingsConfig Datei ganz gut aus

Code:
<?xml version="1.0" encoding="UTF-8"?>
<appSettings>
   <!--
    The network protocol used to access the database.
    Valid options: Default, NamedPipes, Sockets
  -->
   <add key="NetType" value="Default"></add>
   <!--
    Name of the database server to connect to.
  -->
   <add key="DatabaseServer" value="MEINRECHNERNAME"></add>
   <!--
    Name of the database instance to connect to.
  -->
   <add key="DatabaseInstance" value=""></add>
   <!--
    Name of the database to connect to.
  -->
   <add key="DatabaseName" value="Demo Database NAV (6-0)"></add>
   <!--
    Name of the Microsoft Dynamics NAV Server instance to connect
    to (for client) or listen on (for server).
  -->
   <add key="ServerInstance" value="DynamicsNAV"></add>
   <!--
    The listening TCP port for the Microsoft Dynamics NAV Server.
    This is part of the server's URL.
    Valid range: 1-65535
  -->
   <add key="ServerPort" value="7046"></add>
   <!--
    The listening HTTP port for the Microsoft Dynamics NAV
    Business Web Services.
    This is part of the web service's URL.
    Valid range: 1-65535
  -->
   <add key="WebServicePort" value="7047"></add>
   <!--
    Turns on or off the https for Web Services
  -->
   <add key="WebServiceSSLEnabled" value="false"></add>
   <!--
    Maximum permitted size of a Web Services request, in kilobytes
  -->
   <add key="WebServicesMaxMsgSize" value="512"></add>
   <!--
  Turns on or off NTLM authentication protocol for Web Services
      false: Use SPNEGO (recommended)
      true: Use NTLM only
  -->
   <add key="WebServicesUseNTLMAuthentication" value="false"></add>
   <!--
    The default time zone in which web service calls are run.
    Supported values "UTC" (the default), "Server Time Zone"
    (the time zone of the server), or the ID of a Windows
    time zone defined in the system registry under
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones,
    for example "Romance Standard Time"
  -->
   <add key="WebServicesDefaultTimeZone" value="UTC"></add>
   <!--
    Maximum time in seconds a call from the client to the server
    may take to return.
    Time span format: [dd.]hh:mm:ss[.ff]
        dd: days
        hh: hours
        mm: minutes
        ss: seconds
        ff: fractions of a second
    Or "MaxValue" to indicate there is no timeout.
  -->
   <add key="OperationTimeout" value="MaxValue"></add>
   <!--
    The security services used to protect the client/server data stream.
    Valid options: EncryptAndSign, Sign, None
  -->
   <add key="ProtectionLevel" value="EncryptAndSign"></add>
   <!--
    Maximum number of concurrent client calls that can be active on the
    Microsoft Dynamics NAV Server. To disable this setting set the value
    to "MaxValue".
  -->
   <add key="MaxConcurrentCalls" value="40"></add>
   <!--
    The maximum number of concurrent client connection that the service
    will accept. To disable this setting set the value to "MaxValue".
  -->
   <add key="MaxConcurrentConnections" value="150"></add>
   <!--
    Sets the grace period within which the client can reconnect to a
    running session.
    Time span format: [dd.]hh:mm:ss[.ff]
        dd: days
        hh: hours
        mm: minutes
        ss: seconds
        ff: fractions of a second
    Or "MaxValue" to indicate there is no timeout.
  -->
   <add key="ClientReconnectPeriod" value="00:10:00"></add>
   <!--
      Sets the maximum number of orphaned connections to be kept alive
      simultaneouly for a maximum time specified by the
      ClientReconnectPeriod setting. A connection becomes an orphan when
      the client becomes involuntarily disconnected from the server.
  -->
   <add key="MaxNumberOfOrphanedConnections" value="20"></add>
   <!--
      Threshold for when to start compressing data sets to avoid that they
      consume prohibitive amounts of memory.
  -->
   <add key="CompressionThreshold" value="64"></add>
   <!--
      Sets the Metadata Provider cache size (in number in objects cached).
      Set to 0 to disable cache.
  -->
   <add key="MetadataProviderCacheSize" value="150"></add>
   <!--
      Limits the size of files that can be uploaded in order to avoid out of memory errors. This value is in megabytes.
  -->
   <add key="MaxUploadSize" value="5"></add>
   <!--
      With the EnableDebugging flag set to true the Microsoft Dynamics NAV Server
       will start with debugging mode enabled.  This mode has three main functions:
      1)   Upon first connection by a RoleTailored Client all C# for that application
          will be generated. 
      2)   C# files will be persisted between server restarts.
      3)  Application Objects will be compiled with debug information.
  -->
   <add key="EnableDebugging" value="false"></add>
   <!--
      Sets the maximum number of items to serialize or deserialize, in KB
  -->
   <add key="MaxItemsInObjectGraph" value="128"></add>
   <!--
      Sets the default size of a chunk, in KB. Should be a value between 4 and 80.
  -->
   <add key="ChunkSize" value="28"></add>
   <!-- 
    The type of client credential used for authentication. (Values are Windows/UserName)
  -->
   <add key="ClientCredentialType" value="Windows"></add>
   <!--
    The CertificateThumbprint, for the x509 certificate that is going to be used for authentication
  -->
   <add key="CertificateThumbprint" value=""></add>
</appSettings>


Ich habe das NAV 2009 ganz neu auf meinem Notebook installiert und nutze die Demo Datanbank mit dem Mandanten Cronus AG.

Habt Ihr noch weitere Ideen?

Gruß
Alexander

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 16:13

zannaleer hat geschrieben:
Code:
<!--
    Name of the database instance to connect to.
  -->
   <add key="DatabaseInstance" value=""></add>
   



Du bist Dir sicher, dass Du die DB auf der SQL-Standard-Instanz installiert hast? Kein named-Instance?

Hast Du den Rechner auch schon mal neu gestartet und danach überprüft ob die Dienste auch laufen?

Volker

Re: Veröffentlichte web services erscheinen nicht

30. März 2011 20:16

Hallo Alexander,

versuch mal etwas ganz dummes:

Benenne den Mandanten über den CC um. Konsumiere mit irgendeinem Client mal den angegebenen SystemService (http://localhost:7047/DynamicsNAV/WS/SystemService) und lass dir die Mandanten ausgeben:
Code:
string[] companies = service.Companies();

Taucht der neue Mandant auf?

Re: Veröffentlichte web services erscheinen nicht

31. März 2011 08:08

Hast Du mal die Webservice URL inklusive Mandantennamen aufgerufen?

Hast Du das MSDN Tutorial benutzt?

Rumprobieren ohne einen Leitfaden zu haben ist ziemlich unproduktiv.

Re: Veröffentlichte web services erscheinen nicht

31. März 2011 09:23

Hi Alexander,

du kannst den Link auch direkt in den Explorer eingeben:
http://localhost:7047/DynamicsNAV/WS/SystemService

Schau mal, ob deine Mandanten drin sind. Falls du ehe die gleichen MAndanten wie in der Demo verwendest, dann hättest du auch keine neuen Erkenntnisse.

Aber an sich hast du schon eine Verbindung über den Webservice. Weil sonst hättest du einen Fehler bekommen!

-Datenbank nochmal überprüfen
-Form 810 kontrollieren: Haken auf Veröffentlich setzen
-Webservice neustarten



Gruß
Aydin

Re: Veröffentlichte web services erscheinen nicht

5. April 2011 08:43

Hallo JanGD,

kannst Du mir sagen, wie ich an das MSDN Tutorial komme?

Danke.

Gruß
Alexander

Re: Veröffentlichte web services erscheinen nicht

5. April 2011 11:00

Für Webservices mit Page objekt:
http://msdn.microsoft.com/en-us/library/dd355316.aspx

Für Webservices mit Codeunit objekt:
http://msdn.microsoft.com/en-us/library/dd339004.aspx

Für die Technik ist der zweite Link eher sinnvoll.

Für Programmierung/Nutzung des Webservices ist der erste Link besser. Da wird beschrieben wie man einen Datensatz erstellt, modifiziert, anzeigt und löscht.

Gruß
Jan

Re: Veröffentlichte web services erscheinen nicht

6. April 2011 16:28

Hallo JanGD,

danke für die links. Dadurch habe ich auch meinen Fehler gefunden.
Im Tutorial steht beschrieben, dass die web services im RTC veröffentlicht werden sollen. Gewundert hat mich dabei, dass die Tabelle "Web Service" leer war, obwohl ich im classic client bereits web services veröffentlicht hatte.

Des Rätsels Lösung ist, dass ich mit dem classic client auf die native Datenbank zugegriffen habe. Kaum macht man's richtig und nutzt den classic client wit SQL Server, schon funktioniert es.

Danke für Eure Hinweise.

Gruß
Alexander