I have purchased and installed the express version but it crashes when I right mouse click a node (and choose Courier). I get other errors too. This is the error I get:
FluentNHibernate.Cfg.FluentConfigurationException:
An invalid or incomplete configuration was used while creating a
SessionFactory. Check PotentialReasons collection, and InnerException
for more detail.
---> System.ArgumentException: Keyword not supported.
Parameter name: datalayer
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey(String key)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue(String keyword, Object value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item(String key, Object value)
at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(String value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor(String connectionString)
at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(String value)
at NHibernate.Connection.DriverConnectionProvider.GetConnection()
at NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect, IConnectionHelper connectionHelper)
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)
at NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners)
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in
d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line
93
--- End of inner exception stack trace ---
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in
d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line
98
at
Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.GetMySqlSessionFactory(String
connectionString) in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line
182
at
Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.CreateSessionFactory()
in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line
170
at
Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.get_SessionFactory()
in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line
58
at
Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.OpenSession()
in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line
158
at
Umbraco.Courier.Persistence.V4.NHibernate.Persisters.DocumentItem.AvailableItems[T](ItemIdentifier
itemId) in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\Persisters\Document.cs:line
15
at Umbraco.Courier.Core.ItemCrud.AvailableItems[T]()
at Umbraco.Courier.Core.ItemCrudProvider.AvailableItems[T]()
at
Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems()
in
d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line
36
at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id)
at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e)
at System.Web.UI.Control.InitRecursive(Control namingContainer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Keyword not supported.
Parameter name: datalayer
System.ArgumentException: Keyword not supported.
Parameter name: datalayer
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey(String key)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue(String keyword, Object value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item(String key, Object value)
at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(String value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor(String connectionString)
at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(String value)
at NHibernate.Connection.DriverConnectionProvider.GetConnection()
at NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect, IConnectionHelper connectionHelper)
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)
at NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners)
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in
d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line
93
I was told via Twitter that "the nhibernate layer should handle it just fine in 2.1.1", so I uninstalled Courier 2.1, downloaded v2.1.1 from the Projects page and installed it on both websites (local and remote).
I then tried activating Courier on a single content node and got the same (?) error.
Sergio, your issue should be solved by modifying the connection-string in your webconfig
You use Sql Server, you should not need to have the datalayer attribute in the connection string
In regad to MySql, there should be a check in the nhibernate layer that strips out that attribute, but in @gordons case it seems it doesn't
Atleast the 2.5 nightly build nhibernate dll has this check, so you could try to replace the umbraco.courier.persistences.v4.nhibernate dll (and ONLY that single dll)
OK, I downloaded Courier_2_5_2.5.17_hotfix.zip and extracted Umbraco.Courier.Persistence.V4.NHibernate.dll & pdb into the bin folder of my website. I restarted IIS and tried again ... and got this -
System.TypeLoadException: Could not load type 'Umbraco.Courier.ItemProviders.ItemProviders.Entities.TagGroup' from assembly 'Umbraco.Courier.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. at System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs) at System.Reflection.CustomAttribute.CreateCaObject(RuntimeModule module, IRuntimeMethodInfo ctor, IntPtr& blob, IntPtr blobEnd, Int32& namedArgs) at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecoratedTargetSecurityTransparent) at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit) at System.RuntimeType.GetCustomAttributes(Boolean inherit) at Umbraco.Courier.Core.ItemCrudProvider.get_ItemCrudProviders() at Umbraco.Courier.Core.ItemCrudProvider.GetCrudForType(Type type) at Umbraco.Courier.Core.ItemCrudProvider.AvailableItems[T]() at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\10d13058beb058ea\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36 at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id) at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e) at System.Web.UI.Control.InitRecursive(Control namingContainer) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
I have the same problem that Gordon is having. Replacing the Umbraco.Courier.Persistence.V4.NHibernate.dll fixed the "keyword datalayer" error for me, but now I am getting the same error he copied above about not being able to load the type "TagGroup". I am using MySQL, too. Any suggestions would be greatly appreciated!
The TagGroup is a new addition that was not fully completed with the nighly build. The nightly has been updated, and I believe this issue has been resolved.
Downloaded the zip from the link above, copied Umbraco.Courier.Persistence.V4.NHibernate.dll and .pdb into the bin folder of my website. Restarted IIS. Logged onto Umbraco, right clicked node, chose Courier and got ...
An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
Hi Gordon, I have a local install running on webmatrix, using mysql as a datastore, the latest nigtlies should support this as well, (2.5.0.30 is what I just tested this on)
Got the sam DLL from nightly number 34, now I get this error
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary. at System.Collections.Generic.Dictionary`2.get_Item(TKey key) at Umbraco.Courier.Core.ItemProvider.get_DatabasePersistence() at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36 at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id) at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e) at System.Web.UI.Control.InitRecursive(Control namingContainer) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Uninstalled Courier - removed the extra table from the database - reinstalled Courier from within Umbraco admin - downloaded Courier_2.5_2.5.0.30_hotfix.zip - copied Umbraco.Courier.Persistence.V4.NHibernate.dll into the bin folder - logged off - refreshed browser - logged on - selected a content node - selected "Courier" from context menu and got -
The given key was not present in the dictionary.
Error details
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary. at System.Collections.Generic.Dictionary`2.get_Item(TKey key) at Umbraco.Courier.Core.ItemProvider.get_DatabasePersistence() at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36 at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id) at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e) at System.Web.UI.Control.InitRecursive(Control namingContainer) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Just noticed that installing this Courier dll has broken the website - using umDebugShowTrace I can see lots of this -
Unable to load one or more of the types in assembly 'Umbraco.Courier.Persistence.V4.NHibernate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Exceptions were thrown:<br>System.IO.FileLoadException: Could not load file or assembly 'FluentNHibernate, Version=1.2.0.712, Culture=neutral, PublicKeyToken=8aa435e3cb308880' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
I tried instlling the full version of the latest "nightly" but that failed as well. As a last attempt, I uninstalled (again!) and then installed the nightly version Courier_2.5_2.5.0.30.zip as mentioned by Per above ... and it worked!!!
I haven't done an actual transfer yet but it all seems to be functioning so far.
I still have the nightly version installed (previous post) and have just tried to create a Package. The package created OK but I cannot add any irems to it - as soon as I click "package selected" I get this error:
System.Runtime.Serialization.SerializationException: Expecting element 'root' from namespace ''.. Encountered 'None' with name '', namespace ''. at System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName) at System.Runtime.Serialization.XmlObjectSerializer.InternalReadObject(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver) at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver) at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(XmlDictionaryReader reader) at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(Stream stream) at Umbraco.Courier.Core.Helpers.Serialization.Json.Deserialise[T](String json) at Umbraco.Courier.UI.Pages.EditRevisions.(Object sender, EventArgs e) at System.Web.UI.WebControls.Button.OnClick(EventArgs e) at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
I did try installing the latest version from the repository but that doesn't appear to work with MySQL either!?!?
Does Courier work with MySQL?
I have purchased and installed the express version but it crashes when I right mouse click a node (and choose Courier). I get other errors too. This is the error I get:
FluentNHibernate.Cfg.FluentConfigurationException: An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
---> System.ArgumentException: Keyword not supported.
Parameter name: datalayer
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey(String key)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue(String keyword, Object value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item(String key, Object value)
at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(String value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor(String connectionString)
at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(String value)
at NHibernate.Connection.DriverConnectionProvider.GetConnection()
at NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect, IConnectionHelper connectionHelper)
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)
at NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners)
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line 93
--- End of inner exception stack trace ---
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line 98
at Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.GetMySqlSessionFactory(String connectionString) in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line 182
at Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.CreateSessionFactory() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line 170
at Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.get_SessionFactory() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line 58
at Umbraco.Courier.Persistence.V4.NHibernate.NHibernateProvider.OpenSession() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\NHibernate.cs:line 158
at Umbraco.Courier.Persistence.V4.NHibernate.Persisters.DocumentItem.AvailableItems[T](ItemIdentifier itemId) in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Persistence.NHibernate\Persisters\Document.cs:line 15
at Umbraco.Courier.Core.ItemCrud.AvailableItems[T]()
at Umbraco.Courier.Core.ItemCrudProvider.AvailableItems[T]()
at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36
at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id)
at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e)
at System.Web.UI.Control.InitRecursive(Control namingContainer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Keyword not supported. Parameter name: datalayer
System.ArgumentException: Keyword not supported.
Parameter name: datalayer
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey(String key)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue(String keyword, Object value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item(String key, Object value)
at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(String value)
at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor(String connectionString)
at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(String value)
at NHibernate.Connection.DriverConnectionProvider.GetConnection()
at NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect, IConnectionHelper connectionHelper)
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)
at NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners)
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line 93
I was told via Twitter that "the nhibernate layer should handle it just fine in 2.1.1", so I uninstalled Courier 2.1, downloaded v2.1.1 from the Projects page and installed it on both websites (local and remote).
I then tried activating Courier on a single content node and got the same (?) error.
Well, I've tried Courier on nodes, document types, stylesheets, etc and they all fail - and all have the message
Keyword not supported. Parameter name: datalayer
Doesn't that mean that it is not handling the fact that the database is MySQL?! :-(
I assume no one else has used Courier on a MySQL powered site? Has anyone at Umbraco HQ tested to see if it does?
I'm a bit stuck at the moment ... I've purchased a licence for a product that won't work, for a site that I am trying to get live very soon! :-(
Hi Gordon,
I have exactly the same problem and I´m using SQL Server 2008 R2.
Let´s hope somebody can help us...
Sergio, your issue should be solved by modifying the connection-string in your webconfig
You use Sql Server, you should not need to have the datalayer attribute in the connection string
In regad to MySql, there should be a check in the nhibernate layer that strips out that attribute, but in @gordons case it seems it doesn't
Atleast the 2.5 nightly build nhibernate dll has this check, so you could try to replace the umbraco.courier.persistences.v4.nhibernate dll (and ONLY that single dll)
http://nightly.umbraco.org/UmbracoCourier/2.5/nightly%20builds/
Thanks Per!
That was exactly my problem. Now it´s working.
The datalayer attribute is it writed by default in the connection string?
@sergio, nope as far as I know, it should normally not be added on a normal installation
OK, I downloaded Courier_2_5_2.5.17_hotfix.zip and extracted Umbraco.Courier.Persistence.V4.NHibernate.dll & pdb into the bin folder of my website. I restarted IIS and tried again ... and got this -
System.TypeLoadException: Could not load type 'Umbraco.Courier.ItemProviders.ItemProviders.Entities.TagGroup' from assembly 'Umbraco.Courier.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
at System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs)
at System.Reflection.CustomAttribute.CreateCaObject(RuntimeModule module, IRuntimeMethodInfo ctor, IntPtr& blob, IntPtr blobEnd, Int32& namedArgs)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecoratedTargetSecurityTransparent)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit)
at System.RuntimeType.GetCustomAttributes(Boolean inherit)
at Umbraco.Courier.Core.ItemCrudProvider.get_ItemCrudProviders()
at Umbraco.Courier.Core.ItemCrudProvider.GetCrudForType(Type type)
at Umbraco.Courier.Core.ItemCrudProvider.AvailableItems[T]()
at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\10d13058beb058ea\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36
at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id)
at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e)
at System.Web.UI.Control.InitRecursive(Control namingContainer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Do I need to install the entire v2.5 from nightly?
I have the same problem that Gordon is having. Replacing the Umbraco.Courier.Persistence.V4.NHibernate.dll fixed the "keyword datalayer" error for me, but now I am getting the same error he copied above about not being able to load the type "TagGroup". I am using MySQL, too. Any suggestions would be greatly appreciated!
Hello,
The TagGroup is a new addition that was not fully completed with the nighly build. The nightly has been updated, and I believe this issue has been resolved.
http://nightly.umbraco.org/UmbracoCourier/2.5/nightly%20builds/Courier_2.5_2.5.0.19_hotfix.zip
Try the Umbraco.Courier.Persistence.V4.NHibernate.dll from this archive.
Casey
Downloaded the zip from the link above, copied Umbraco.Courier.Persistence.V4.NHibernate.dll and .pdb into the bin folder of my website. Restarted IIS. Logged onto Umbraco, right clicked node, chose Courier and got ...
An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
Courier still does not work with MySQL ... is there anything else I can try?
Hi Gordon, I have a local install running on webmatrix, using mysql as a datastore, the latest nigtlies should support this as well, (2.5.0.30 is what I just tested this on)
http://nightly.umbraco.org/UmbracoCourier/2.5/nightly%20builds/
/Per
Per, should I install the full version from nightly or continue just copying in the DLL?
Got the sam DLL from nightly number 34, now I get this error
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at Umbraco.Courier.Core.ItemProvider.get_DatabasePersistence()
at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36
at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id)
at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e)
at System.Web.UI.Control.InitRecursive(Control namingContainer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
What next?
Did it work with an earlier nightly build?
Not all nightly builds will be stable, so can't really pinpoint what that specific issue is about
/Per
OK, I have removed Courier from Umbraco again. I will re-install and try the dll from nightly v30 later ...
By the way - Courier has never worked for me with MySQL
Uninstalled Courier - removed the extra table from the database - reinstalled Courier from within Umbraco admin - downloaded Courier_2.5_2.5.0.30_hotfix.zip - copied Umbraco.Courier.Persistence.V4.NHibernate.dll into the bin folder - logged off - refreshed browser - logged on - selected a content node - selected "Courier" from context menu and got -
The given key was not present in the dictionary.
Error details
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at Umbraco.Courier.Core.ItemProvider.get_DatabasePersistence()
at Umbraco.Courier.ItemProviders.DocumentItemProvider.AvailableSystemItems() in d:\TeamCity6\buildAgent\work\399aef48762b5884\Umbraco.Courier.Providers\ItemProviders\ContentItemProvider.cs:line 36
at Umbraco.Courier.Core.ItemProvider.FindSystemItem(String id)
at Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e)
at System.Web.UI.Control.InitRecursive(Control namingContainer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Any ideas?
Just noticed that installing this Courier dll has broken the website - using umDebugShowTrace I can see lots of this -
Unable to load one or more of the types in assembly 'Umbraco.Courier.Persistence.V4.NHibernate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Exceptions were thrown:<br>System.IO.FileLoadException: Could not load file or assembly 'FluentNHibernate, Version=1.2.0.712, Culture=neutral, PublicKeyToken=8aa435e3cb308880' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Does that help?
I tried instlling the full version of the latest "nightly" but that failed as well. As a last attempt, I uninstalled (again!) and then installed the nightly version Courier_2.5_2.5.0.30.zip as mentioned by Per above ... and it worked!!!
I haven't done an actual transfer yet but it all seems to be functioning so far.
I still have the nightly version installed (previous post) and have just tried to create a Package. The package created OK but I cannot add any irems to it - as soon as I click "package selected" I get this error:
System.Runtime.Serialization.SerializationException: Expecting element 'root' from namespace ''.. Encountered 'None' with name '', namespace ''.
at System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName)
at System.Runtime.Serialization.XmlObjectSerializer.InternalReadObject(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(XmlDictionaryReader reader)
at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(Stream stream)
at Umbraco.Courier.Core.Helpers.Serialization.Json.Deserialise[T](String json)
at Umbraco.Courier.UI.Pages.EditRevisions.(Object sender, EventArgs e)
at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
I did try installing the latest version from the repository but that doesn't appear to work with MySQL either!?!?
is working on a reply...