Mittwoch, 20. Juni 2012

Erstellen von WCF-Services mit Visual Studio 2010

  1. Starten von Visual Studio im Administratormodus
  2. Erstellen einer neuen Projektmappe
  3. Hinzufügen eines neuen Projekts (Server-Projekt)
  4. Erstellen eines Interface, das die Methoden des Service definiert. Über eine Annotation wird festgelegt, dass es sich um ein Service-Interface handelt (ServiceContract): [ServiceContract(Namespace = "http://BeispielNamespace")]. Der Name des Beispiel-Namespace kann frei gewählt werden.
  5. Die Servicemethoden werden ebenfalls annotiert: [OperationContract]
  6. Erstellen der Serviceklasse, die das Interface implementiert; die Serviceklasse ist eine POJO-Klasse, enthält also keinen Service-spezifischen Code
  7. Erstellen einer Klasse, die den Service bereitstellt:
    1. Definition der Uri, unter der der Service verfügbar sein wird: Uri baseAddress = new Uri("http://localhost:8000/ServiceModelSamples/BeispielService");  Die Bezeichungen "ServiceModelSamples" und "BeispielService" können frei gewählt werden, müssen also nicht mit der Klassenbezeichnung übereinstimmen.
    2. Erstellen des ServicHosts: ServiceHost selfHost = new ServiceHost(typeof(CalculatorService), baseAddress);
    3. Hinzufügen des Servicendpoints: selfHost.AddServiceEndpoint(
                      typeof(),
                      new WSHttpBinding(),
                      "BeispielService");
    4. Konfiguration des Service-Hosts: ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
                      smb.HttpGetEnabled = true;
                      selfHost.Description.Behaviors.Add(smb);
    5. Öffnen des Service-Hosts: selfHost.Open();
    6. Zum Beenden des Service wird der Service-Host geschlossen: selfHost.Close();
    7. Ausführung des Server-Projekts zum Starten des Service
  8. Hinzufügen eines neuen Projekts (Client-Projekt)
  9. Erzeugung des Proxy mit Hilfe der Anwendung "SvcUtil.exe": Die Anwendung ist zu finden unter "C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin" und wird vom Client-Projekt-Ordner aus aufgerufen: "SvcUtil.exe" /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/BeispielService". Wichtig zur Generierung des Quellcodes ist, dass der Service (als Administrator) gestartet ist. Dadurch wird die Quellcode-Datei "generatedProxy.cs erstellt. 
  10. Der Service kann im Quellcode des Clients wie eine lokale Komponente verwendet werden: BeispielClient client = new BeispielClient();

Mittwoch, 18. August 2010

WSDL-Generierung .NET

Kommandozeilen-Tool: wsdl.exe
Ausführung: wsdl.exe

Sonntag, 27. Juni 2010

Erstellung eines Magento Multistore mit mehreren Websites

video:
http://www.magentocommerce.com/blog/comments/video-creating-multiple-online-storefronts-part1/

  1. Erstellung eines Verzeichnisses im root-Verzeichnis der magento-Installation; der Verzeichnisname entspricht dem Namen der neuen Webseite
  2. Kopieren der .htaccess und der index.php-Dateien aus der bestehenden Webseite in das neue Verzeichnis
  3. Editieren des neuen index.php-Files: Editieren des "require_once"-Eintrags: 'app/Mage.php' muss in '../app/Mage.php' geändert werden - falls 'app/Mage.php' als Variable gespeichert ist, muss die Variable editiert werden
  4. Editieren des "Mage::run"-Eintrags des neuen index.php-Files: Ersetzen des ursprünglichen Eintrags "Mage::run($mageRunCode, $mageRunType);" durch "Mage::run('', 'website');"
  5. Erstellen einer Root-Kategorie für die neue Webseite: unter Katalog -> Kategorien verwalten den Namen der neuen Kategorie eintragen - wichtig: dazu keine Store view auswählen; dabei müssen "Is active" und "Is Anchor" auf "Ja" gesetzt werden
  6. Erstellen der neuen Webseite unter System -> Stores verwalten -> Website anlegen: Namen der neuen Webseite sowie String-Identifier (in Kleinbuchstaben) angeben; keine Reihenfolge angeben
  7. Erstellen eines neuen Stores: System -> Stores verwalten -> Store anlegen: Dazu wird die neue Website ausgewählt. Zusätzlich müssen der Name des neuen Stores und die Root-Kategorie angegeben werden.
  8. Erzeugen einer neuen Store-View unter System -> Stores verwalten -> StoreView anlegen: Auswahl des Store, Angabe des neuen Namens, eines Codes (String-Identifier in Kleinbuchstaben), Status "Aktiviert"
  9. Konfiguration der Url: unter System -> Konfiguration -> Aktueller Konfig-Bereich Auswahl der Store-View. Die Url wird unter Allgemein -> Web -> Ungesichert -> Basis Url eingetragen; z.B. "http://127.0.0.1/magento"
  10. Unter Sicher -> Basis Url wird zusätzlich die Secure Url eingetragen. Dazu wird die Checkbox "Website verwenden" deselektiert. An die bestehende Url wird die Url der neuen Website angehängt, z.B. "{{unsecure_base_url}}/". Dabei den Slash nicht vergessen und keinen Slash vor die Bezeichnung der neuen Website stellen.
  11. System -> Configuration -> General -> Web -> Unsecure -> Base Link Url: check off "Use default" and append the url of the new website, e.g. "{{unsecure_base_url}}/ - don't forget the slash at the end and don't use any flash before the new website name
  12. System -> Configuration -> General -> Web -> Secure -> Base Url: check off "Use default" and fill in the secure url of your main magento website, e.g. "https://127.0.0.1/magento"
  13. System -> Configuration -> General -> Web -> Secure -> Base Link Url: check off "Use default" and append the url of the new website, e.g. "{{unsecure_base_url}}/ - don't forget the slash at the end and don't use any flash before the new website name
  14. Save the configuration. If you now go to the site of your new store, you get the message, that there's no cms page configured.
  15. Now, you can add some categories and products. Additionaly to the root category of the new website, you have to add subcategories displayed at the front page of the new store. To do so, go to Catalog -> Manage categories and choose the root category of the new website in the left category tree. Press "Add subcategory" and fill in the new category data. Set "Is Active -> Yes" and "Is anchor -> Yes" again and save. Now, the new category is displayed at the front page. But it doesn't contain any products.
  16. To add some products, you go to Catalog -> Manage products. There, you choose the product you want to associate with the new website. Under Product information -> Websites, you add the new website by selecting it and save. Now, you go to the category site (Catalog -> Manage Categories) where you choose the category you want to associate the product with. Under "Category products", you choose Page "Any" and search for the product, select it and save. Then, the product is displayed under the new category of your new store. If this doesn't work, make sure that the product is available and its stock number is greater than 0.

Donnerstag, 17. Juni 2010

Creating a magento webshop

  1. Installation of the webshop
    1. Load down magento
    2. Installation Apache
    3. Installation mySql
    4. Create database, user and grant rights
    5. Copy magento to the http-directory
    6. Installation: http:///magento/index.php/install/
  2. Installation of plugins, for example for german shops: http://www.magentocommerce.com/magento-connect/symmetrics+GmbH/extension/1764/market-ready-germany - Copy the installation key. Under System -> Magento Connect -> Connect Manager you insert the installation key to start the installation of the plugin.