Seite 1 von 3

[gelöst] WebServices einrichten

Verfasst: 12. Januar 2009 12:53
von tuxinator
Hallo,

ich bin gerade am versuchen die WebServices einzurichten. Der Dienst ist gestartet und ich habe eine Codeunit eingerichtet.

Wenn ich jetzt auf die URL http://localhost:7047/DynamicsNAV gehe, bekomme ich "Das Veröffentlichen von Metadaten für diesen Dienst ist derzeit deaktiviert." und eine Anleitung wie ich per Config-Datei diese Metadaten aktivieren kann. Nur welche Datei gemeint ist, wird nicht gesagt...

Kann mir da jemand weiter helfen?

Re: WebServices einrichten

Verfasst: 12. Januar 2009 12:59
von Natalie
Hast du deine Codeunit in Form 810 (Web Services) eingetragen und dort den Haken bei "Veröffentlicht" gesetzt?

Re: WebServices einrichten

Verfasst: 12. Januar 2009 13:02
von tuxinator
Ja, die steht in der Form inkl. Haken.

Re: WebServices einrichten

Verfasst: 12. Januar 2009 13:04
von Natalie
Nächster Versuch:
Die Funktionalität innerhalb deiner Codeunit darf nur in neuen Funktionen und nicht im OnRun-Trigger stehen. Passt das auch?

PS: Die Onlinehilfe sagt einiges dazu.
Schau dir mal folgende Artikel an:
  • "Configuring Microsoft Dynamics NAV Server"
    Oben steht auch der Pfad zur entsprechenden Datei. Ich nehme an, der Teil mit dem Web-Services-Port steht in deiner CustomSettings.xml gar nicht drin.
    Code:
    <!--
        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>
  • "Walkthrough: Creating and Consuming a Codeunit Web Service"
  • "Designing Web Services"

Re: WebServices einrichten

Verfasst: 12. Januar 2009 13:16
von tuxinator
In der CodeUnit steht sowohl im OnRun-Trigger als auch in eigenen Funktionen code...Ich habe auch gerade mal eine andere CodeUnit versucht, mit dem gleichen Ergebnis.

Aber die Onlinehilfe werde ich mir gleich mal anschauen. Vielen Dank!

Re: WebServices einrichten

Verfasst: 12. Januar 2009 16:23
von tuxinator
So, ich hab die angegebenen Stellen mal durchforstet. Aber es funktioniert leider trotzdem noch nicht.
Wenn ich die oben angegebene Seite im Internet Explorer (vorher wars der Firefox) öffne, bekomme ich nur eine weiße Seite...

Muss ich vllt noch irgendwas zusätzlich installieren? Ich musste nämlich schon den IIS installieren.

Re: WebServices einrichten

Verfasst: 12. Januar 2009 16:35
von Natalie
tuxinator hat geschrieben:Muss ich vllt noch irgendwas zusätzlich installieren? Ich musste nämlich schon den IIS installieren.

Sämtliche Voraussetzungen stehen in den o.g. Artikel bereits drin.
Walkthrough: Creating and Consuming a Codeunit Web Service hat geschrieben:Prerequisites
To complete this walkthrough, you will need:
  • Microsoft Dynamics NAV 2009 installed with a developer license.
  • Microsoft Dynamics Web services must be installed and running.
  • Visual Studio 2005, Visual Studio 2008, or C# Express installed.
  • Visual Web Developer 2008 installed.

Wenn du die Onlinehilfe (C/SIDE Reference Guide) nach "Web Services" durchsuchst, erhältst du noch mehr.

In dem Artikel "Walkthrough: Creating and Consuming a Codeunit Web Service" ist übrigens eine andere URL als deine genannt:
http://localhost:7047/DynamicsNAV/WS/services

Du hast dir also die CustomSettings.xm schon angesehen, und
Code:
<add key="WebServicePort" value="7047"></add>
ist darin enthalten?

Re: WebServices einrichten

Verfasst: 12. Januar 2009 17:22
von tuxinator
- Die aufgelisteten Programme sind installiert und laufen auch eigentlich korrekt.
- Der Link bringt das gleich Ergebnis (weiße Seite) wie meiner
- die Zeile steht auch in der CustomSettings.xml drin

Re: WebServices einrichten

Verfasst: 13. Januar 2009 14:35
von tuxinator
Ich versteh es einfach nicht! Bei meinem Kollegen funktioniert das auch nicht. Hat noch jemand eine Idee?

Re: WebServices einrichten

Verfasst: 13. Januar 2009 14:37
von Natalie
tuxinator hat geschrieben:Ich versteh es einfach nicht! Bei meinem Kollegen funktioniert das auch nicht. Hat noch jemand eine Idee?

Hängt es an deinem Benutzer (Windows-Account) oder am Rechner? Vielleicht fehlende Admin-Rechte?
In einem parallelen Thema hat schon einmal eine zu scharf eingestellte Firewall Probleme verursacht.

Re: WebServices einrichten

Verfasst: 13. Januar 2009 14:45
von tuxinator
Rechner sind es jetzt schon 2 verschiedene auf denen es nicht geht. Beide mit Adminrechten.
Firewall ist nur die aus Windows drauf und die hab ich auch schon ausgeschaltet -> trotzdem nix!

//Edit: Der Virenscanner (FSecure) ist es auch nicht...

Re: WebServices einrichten

Verfasst: 13. Januar 2009 14:51
von Natalie
OK, blöde Frage (aber sicher ist sicher): NAV-Server läuft und den RTC könnt ihr somit auch nutzen, oder?
Nur auf dem Classic Client wird das nicht laufen ....

Re: WebServices einrichten

Verfasst: 13. Januar 2009 14:59
von tuxinator
Der Navision und der Microsoft SQL-Server laufen und ich kann sowohl in den RTC als auch in den CLCL. Da funktioniert alles einwandfrei.

Re: WebServices einrichten

Verfasst: 13. Januar 2009 16:47
von vsnase
Ohne mich damit bis jetzt beschäftigt zu haben, aber bei Webservices imme reinen Versuch wert:

Richtige .NET-Version im IIS ausgewählt?
Sind die Rechte entsprechend richtig vergeben (z. B. IIS-WPG)?

Volker

Re: WebServices einrichten

Verfasst: 13. Januar 2009 17:47
von tuxinator
IIS ist die Version installiert, welche von Windows XP Pro SP3 mitgebracht wird. .Net habe ich in folgenden Versionen installiert: 2.0 SP2, 3.0 SP2 und 3.5 SP1

Und welche Rechte kann ich dem IIS wo geben?

Re: WebServices einrichten

Verfasst: 13. Januar 2009 17:49
von Natalie
tuxinator (ganz zu Anfang) hat geschrieben:und eine Anleitung wie ich per Config-Datei diese Metadaten aktivieren kann.

Und was stand da drin?

Re: WebServices einrichten

Verfasst: 13. Januar 2009 18:02
von tuxinator
Natalie hat geschrieben:
tuxinator (ganz zu Anfang) hat geschrieben:und eine Anleitung wie ich per Config-Datei diese Metadaten aktivieren kann.

Und was stand da drin?

siehe Anhang

Re: WebServices einrichten

Verfasst: 14. Januar 2009 12:32
von tuxinator
Ich habe mir jetzt zum Testen mal eine VM (mit Windows 2003 Server Enterprise Edition x86) aufgesetzt, weil ich mir gedacht hab es könnte auch an Windows XP liegen. Aber da habe ich das gleiche Phänomen...

Gibt es da vllt irgendwie eine Special Version von Navision ^^

Re: WebServices einrichten

Verfasst: 14. Januar 2009 15:06
von SilverX
Hmm... Irgendwie kann ich mir nicht vorstellen, dass auf nun mittlerweile 3 verschiedenen Rechnern und sogar 2 verschiedenen Personen die Installation jedes Mal die gleichen fehlerhaften Resultate bringt. Irgend etwas müsst ihr anders machen als die Anderen...

  • Der SQL Server läuft und mit dem Classic Client funktioniert eine Verbindung zur NAV 6.0 Datenbank (der Server und die Datenbank, die in der CustomSettings.config unter "DatabaseServer" und "DatabaseName" angegeben sind)?
  • In der benannten NAV Datenbank ist der aktuell angemeldete Windows Benutzer (also du) mit der Rolle SUPER hinterlegt oder es ist weder ein Windows- noch ein Datenbankbenutzer hinterlegt?
  • Der Dienst "Microsoft Dynamics NAV Business Web Service" läuft unter dem Account NETWORK SERVICE und hinterlässt keine Fehler, maximal Hinweise, im Anwendungsprotokoll?

Was passiert (lokal vom Rechner mit der NAV 6.0 Installation per IE aufgerufen) bei der URL http://localhost:7047/DynamicsNAV/ws/CRONUS_AG/services?WSDL bzw. der mit einem vorhandenen Mandatennamen (Achtung, Leerzeichen ersetzen durch Unterstrich)?

Was ist im IE unter Internetoptionen/Erweitert/Kurze HTTP Fehlermeldungen anzeigen eingestellt? Ist die Seite wirklich leer oder wird ein Fehler angezeigt (wenn der Haken hier raus ist)?

Wenn das alles nicht hilft bzw. dich nicht weiterbringt, dann solltest du ggf. mit Microsoft in Verbindung treten. Alternativ evtl. per PM und dann ein kurzes Telefonat.

Re: WebServices einrichten

Verfasst: 14. Januar 2009 17:55
von tuxinator
1. check, das läuft alles Einwandfrei
2. das geht über Windowsanmeldung (mein Benutzer hab Adminrechte) und der User hat die ALLE- und SUPER-Rolle hinterlegt
3. Der Dienst läuft unter "NT Authority\NetworkService" und wirft auch keine Fehler ins Protokoll
4. Der Haken im IE ist jetzt raus, die Seite ist immernoch weiß (Im Firefox siehts genauso aus)

Wir versuchens jetzt noch auf nem 4. Rechner...

Re: WebServices einrichten

Verfasst: 14. Januar 2009 18:12
von tuxinator
Neuer Ansatz der mir grad eingefallen ist: Liegts vllt an der Lizenz? Müssen wir noch irgendwas Lizenzieren?

Re: WebServices einrichten

Verfasst: 14. Januar 2009 21:27
von SilverX
tuxinator hat geschrieben:Neuer Ansatz der mir grad eingefallen ist: Liegts vllt an der Lizenz? Müssen wir noch irgendwas Lizenzieren?


ich kann morgen mal mit einer "alten" pre 2009 lizenz testen... Wobei ihr sicherlich ja mit der Cronus Lizenz auch schon gestestet habt!?

EDIT: Auch mit einer alten Lizenz funktioniert es bei mir einwandfrei...

Re: WebServices einrichten

Verfasst: 14. Januar 2009 22:04
von tuxinator
Ich habs sowohl mit der CRONUS-Lizenz als auch mit unserer Entwicklerlizenz probiert...sind wir denn die Einzigen, bei denen das nich geht? Selbst Google gibt nicht viel brauchbares über WebServices her!

Re: WebServices einrichten

Verfasst: 14. Januar 2009 22:10
von Natalie
Wie hattet ihr NAV 2009 installiert (wenn überhaupt), also mit welchen Optionen? Irgenwelche Besonderheiten?

Re: WebServices einrichten

Verfasst: 14. Januar 2009 22:33
von tuxinator
Auch unterschiedlich. Mal komplett, mal die Demoinstallation...Reparaturinstallation ist auch schon drüber gelaufen.