Just finished the last round of rafactorings so will most likely push out the final beta today or tomorrow to get some testing done. It should work for 4.5 as the apis courier uses were already in place in 4.5
As mentioned on Twitter, the error with Courier 2.5 that seems to happen when packaging media is as below:
System.NullReferenceException: Object reference not set to an instance of an object. at Umbraco.Courier.Core.Packaging.RevisionPackaging.AddToQueue(List`1 items) at Umbraco.Courier.Core.Packaging.RevisionPackaging.AddToQueue(RevisionManifest manifest) at Umbraco.Courier.Core.Tasks.PackagingTask.Run() at Umbraco.Courier.Core.TaskManager.(IRevisionTask value) 26/10/2011 15:09:15
We've installed courier 2.5 and are now getting authorization errors (see below). We've always used the admin account (User 0) and havent had any problems in version 2.1. The password for the admin account is the same in both environments. I even tried specifying the account (and a couple others), but it still isnt working.
We are using a custom membership provider which is tied to Active Directory. Could this be causing the issue? Is Courier trying to use the default provider instead?
Exception information:
Exception type: SoapException
Exception message: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Umbraco.Courier.Core.Exceptions.UnauthorizedClientException: User: admin could not be authenticated
at Umbraco.Courier.RepositoryProviders.WebserviceProvider.Security.SecurityHelper.ValidateUser(String login, String pass)
at Umbraco.Courier.RepositoryProviders.WebserviceProvider.Security.Authentication.AuthorizeClient(String login, String password, Boolean cacheAuthResult)
at Umbraco.Courier.RepositoryProviders.Webservices.Repository.AuthorizeClient(String username, String password)
at Umbraco.Courier.RepositoryProviders.Webservices.Repository.GetAvailableRevisions(String username, String password)
--- End of inner exception stack trace ---
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Umbraco.Courier.RepositoryProviders.WebServiceProvider.RepositoryWebservice.GetAvailableRevisions(String username, String password)
at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.GetAvailableRevisions()
at Umbraco.Courier.Core.RepositoryProvider.GetAvailableRevisions(String folder)
at Umbraco.Courier.UI.Trees.LoadRepositories.Render(XmlTree& tree)
at umbraco.presentation.webservices.TreeDataService.LoadTree(TreeRequestParams treeParams)
at umbraco.presentation.webservices.TreeDataService.GetXmlTree()
at umbraco.presentation.webservices.TreeDataService.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Using custom membership providers means you need to use a member of that provider... Thus, in AD Membership, an AD User. There is a Hybrid Membership provider that uses AD, then Umbraco, so you get the best of both worlds.
A few things to note...
When using a Custom Membership provider, you can NOT use the Courier User ID configuration.... You MUST specify the user and password in the configuration. The password encoding MUST be set to Clear (not Clean).
Reason... We do some magic with the Umbraco Membership Provider to allow hashed passwords to be compared. When using a Custom provider, it does the default ValidateUser method call, which is expecting a clear password, not a hashed one..
How are you specifying the user that accesses the remote repositories? If you are specifying <user>###</user> and not the individual username,password,format settings, then it should be working.
If you are specifying the username,password and format, the format will need to match the remote computers format (Clear or Hashed, Hashed by default).
If you continue to struggle with this, submit a message via contact us page, and we can exchange configuration files and find if it is a bug or just configuration issue.
Courier 2.5
Hi,
do you already have a release date (range) for version 2.5?
And will there be a compatible version for Umbraco 4.5, like for version 2.1?
Thanks
Matthias
Hi Matthias
Just finished the last round of rafactorings so will most likely push out the final beta today or tomorrow to get some testing done. It should work for 4.5 as the apis courier uses were already in place in 4.5
/per
Hi Per,
As mentioned on Twitter, the error with Courier 2.5 that seems to happen when packaging media is as below:
System.NullReferenceException: Object reference not set to an instance of an object. at Umbraco.Courier.Core.Packaging.RevisionPackaging.AddToQueue(List`1 items) at Umbraco.Courier.Core.Packaging.RevisionPackaging.AddToQueue(RevisionManifest manifest) at Umbraco.Courier.Core.Tasks.PackagingTask.Run() at Umbraco.Courier.Core.TaskManager.(IRevisionTask value) 26/10/2011 15:09:15
Regards,
Jeavon
Where can I download version 2.5?
thanks @jeavon, will look into it today.
@chet - you can download the 2.5 nigtlies from http://nightly.umbraco.org/UmbracoCourier/2.5/nightly%20builds/
/per
We've installed courier 2.5 and are now getting authorization errors (see below). We've always used the admin account (User 0) and havent had any problems in version 2.1. The password for the admin account is the same in both environments. I even tried specifying the account (and a couple others), but it still isnt working.
We are using a custom membership provider which is tied to Active Directory. Could this be causing the issue? Is Courier trying to use the default provider instead?
Exception information:
Exception type: SoapException
Exception message: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Umbraco.Courier.Core.Exceptions.UnauthorizedClientException: User: admin could not be authenticated
at Umbraco.Courier.RepositoryProviders.WebserviceProvider.Security.SecurityHelper.ValidateUser(String login, String pass)
at Umbraco.Courier.RepositoryProviders.WebserviceProvider.Security.Authentication.AuthorizeClient(String login, String password, Boolean cacheAuthResult)
at Umbraco.Courier.RepositoryProviders.Webservices.Repository.AuthorizeClient(String username, String password)
at Umbraco.Courier.RepositoryProviders.Webservices.Repository.GetAvailableRevisions(String username, String password)
--- End of inner exception stack trace ---
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Umbraco.Courier.RepositoryProviders.WebServiceProvider.RepositoryWebservice.GetAvailableRevisions(String username, String password)
at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.GetAvailableRevisions()
at Umbraco.Courier.Core.RepositoryProvider.GetAvailableRevisions(String folder)
at Umbraco.Courier.UI.Trees.LoadRepositories.Render(XmlTree& tree)
at umbraco.presentation.webservices.TreeDataService.LoadTree(TreeRequestParams treeParams)
at umbraco.presentation.webservices.TreeDataService.GetXmlTree()
at umbraco.presentation.webservices.TreeDataService.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
I'm currently having the same problem as Alex. Same situation, same configuration, same error. Any resolution to this?
Hi Alex, Keith,
Using custom membership providers means you need to use a member of that provider... Thus, in AD Membership, an AD User. There is a Hybrid Membership provider that uses AD, then Umbraco, so you get the best of both worlds.
A few things to note...
When using a Custom Membership provider, you can NOT use the Courier User ID configuration.... You MUST specify the user and password in the configuration. The password encoding MUST be set to Clear (not Clean).
Reason... We do some magic with the Umbraco Membership Provider to allow hashed passwords to be compared. When using a Custom provider, it does the default ValidateUser method call, which is expecting a clear password, not a hashed one..
Casey
Hi Guys, did anyone make any progress with this? i'm not using a customer membership provider just the standard one and i'm getting the same error.
the only thing that may be unusual is that the source site is running agasint MS SQL and the destination is MySql
would appreciate some help.
thanks
Hi Andy,
How are you specifying the user that accesses the remote repositories? If you are specifying <user>###</user> and not the individual username,password,format settings, then it should be working.
If you are specifying the username,password and format, the format will need to match the remote computers format (Clear or Hashed, Hashed by default).
If you continue to struggle with this, submit a message via contact us page, and we can exchange configuration files and find if it is a bug or just configuration issue.
Casey
Hi Casey, thanks for your responce, it was my mistake i had the password in as clear rather than hashed.
thanks
Andy
is working on a reply...