I am trying to use umbraco forms but get an error whenever I try to save
Received an error from the server
Access to the path 'C:\Users\nadge\OneDrive\Documents\My Web Sites\my-project\App_Plugins\UmbracoForms\Data\forms\05aa93be-1d17-4535-a6be-f4daaacba766.json' is denied.
I have added the stack trace:
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
at Umbraco.Core.IO.PhysicalFileSystem.AddFile(String path, Stream stream, Boolean overrideIfExists)
at Umbraco.Core.IO.PhysicalFileSystem.AddFile(String path, Stream stream)
at Umbraco.Core.IO.FileSystemWrapper.AddFile(String path, Stream stream)
at Umbraco.Forms.Core.Data.BaseFileSystemStorage`1.SaveToSpecificPath(T item, String id, String path)
at Umbraco.Forms.Core.Cache.FormCacheRefresher.Refresh(String jsonPayload)
at Umbraco.Core.Sync.ServerMessengerBase.DeliverLocal(ICacheRefresher refresher, MessageType messageType, IEnumerable`1 ids, String json)
at Umbraco.Core.Sync.ServerMessengerBase.Deliver(IEnumerable`1 servers, ICacheRefresher refresher, MessageType messageType, IEnumerable`1 ids, String json)
at Umbraco.Core.Sync.ServerMessengerBase.PerformRefresh(IEnumerable`1 servers, ICacheRefresher refresher, String jsonPayload)
at Umbraco.Web.Cache.DistributedCache.RefreshByJson(Guid factoryGuid, String jsonPayload)
at Umbraco.Forms.Core.Cache.FormsDistributedCacheExtensions.RefreshFormsCache(DistributedCache dc, Form form)
at Umbraco.Forms.Core.Cache.CacheEventHandler.FormStorage_Saved(Object sender, FormEventArgs formEventArgs)
at Umbraco.Forms.Core.Extensions.EventExtensions.Raise[T](EventHandler`1 handler, Object sender, T args)
at Umbraco.Forms.Data.Storage.FormStorage.UpdateForm(Form form, String directory)
at Umbraco.Forms.Data.Storage.WorkflowStorage.InsertWorkflow(Form form, Workflow workflow)
at Umbraco.Forms.Web.Editors.FormController.SaveForm(FormDesign formData)
at lambda_method(Closure , Object , Object[] )
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Object instance, Object[] arguments)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()
I cant figure out the issue. If anyone can help me it would be much appreciated
I ended up resolving the issue by resetting the permissions, turned out that the app_pool didnt have permissions to read/write to the form files, if you set it from the top level folder and let the children inherit this it should hopefully resolve the issue!
Thanks Lewis, your suggestion has fixed my problem and it makes sense as this was an authentication problem (even though for my case this is an old website that has been working fine with old app pool permissions and I suspect this could be an Umbraco.Forms bug). Thanks again.
I would think so Nurhak, the whole saving the files to both the database and in the file system is a bit painful to start off with, especially in regards to deployments! Glad it’s up and running.
Umbraco forms unable to save
Hi,
I am trying to use umbraco forms but get an error whenever I try to save
I have added the stack trace:
I cant figure out the issue. If anyone can help me it would be much appreciated
Hi Neil,
Did you ever resolve this, having a similar issue.
Lewis
Did you fix this problem please? My client has reported the same problem recently for an old website, my UmbracoForms version is 4.3.3.
PS: When I create a new Form, I don't see the same problem, even though new form has some entries.
Nurhak,
I ended up resolving the issue by resetting the permissions, turned out that the app_pool didnt have permissions to read/write to the form files, if you set it from the top level folder and let the children inherit this it should hopefully resolve the issue!
Thanks Lewis, your suggestion has fixed my problem and it makes sense as this was an authentication problem (even though for my case this is an old website that has been working fine with old app pool permissions and I suspect this could be an Umbraco.Forms bug). Thanks again.
I would think so Nurhak, the whole saving the files to both the database and in the file system is a bit painful to start off with, especially in regards to deployments! Glad it’s up and running.
Lewis
is working on a reply...