locked
Laufzeitfehler bei Betrieb eines CustomBehavoirs (Verify that the extension is registered in the extension collection at system.serviceModel/extensions/behaviorExtensions.) RRS feed

  • Allgemeine Diskussion


  • Hallo zusammen,

    ich möchte euch von einem heutigen Erlebnis mit einem selbsterstellten Behavior (CustomBehavior) und der Web.config auf einem Windows2003Server System mit dem IIS 6.0 in Verbindung mit dem .NET Framework 4.0 berichten.

    Nachdem ich meinen Webservice auf meinem lokalen Entwicklungsrechner (Windows7 64bit) entwickelt habe und dort bereits erfolgreich mein, zuvor entwickeltes, CustomBehavior einsetzen konnte, wollte ich den aktuellen Stand meiner Software auf dem Windows2003Server System einrichten.

    Nachdem ich meinen Webservice auf den Server übertragen habe und selbigen zum Test aufrief, wurde die Verarbeitung mit einer irritierenden Meldung abgebrochen:

    "---> The type initializer for '<Anwendung>' threw an exception. ---> An error occurred creating the configuration section handler for system.serviceModel/behaviors: Extension element '<CustomBehavior>' cannot be added to this element. Verify that the extension is registered in the extension collection at system.serviceModel/extensions/behaviorExtensions.
    Parameter name: element (<Application_Root>\web.config line 38) ---> Extension element '
    <CustomBehavior>' cannot be added to this element. Verify that the extension is registered in the extension collection at system.serviceModel/extensions/behaviorExtensions."

    Nach längerer Internetrecherche fand ich schlußendlich die Quelle des Fehlers.
    In meiner Web.config, habe ich das CustomBehavior mit folgendem XML-Tag registriert:

    <add name="BiProBehavior" type="Extensions.Behaviors.<CustomBehavior> , <CustomBehavior>, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>

    Dieses führte ausschließlich auf dem Server zu der oben gezeigten Fehlermeldung.
    Die Fehlermeldung selbst, wurde durch das Leerzeichen zwischen "Extensions.Behaviors.<CustomBehavior>" und "<CustomBehavior>" ausgelöst.
    Entfernt man dieses Leerzeichen läuft die Anwendung auch auf dem Serversystem einwandfrei.
    Aus
    <add name="BiProBehavior" type="Extensions.Behaviors.<CustomBehavior> , <CustomBehavior>, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>

    wird also

    <add name="BiProBehavior" type="Extensions.Behaviors.<CustomBehavior>, <CustomBehavior>, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>

    Ich hoffe ich konnte dem ein oder anderen mit dieser Erfahrung weiterhelfen.

      Cheers.

    PS:
    Es ist wirklich interessant, dass man jedwede Kommunikation bis ins kleinste in der Web.config konfigurieren kann, dann allerdings die kleinsten (miß)interpretationen den gesamten Betrieb aufhalten können.


    Donnerstag, 2. Januar 2014 11:57