A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/umbraco/Umbraco.Deploy.Issues/issues/70 below:

Error on Content transfer when Grid Control text has square brackets (Umbraco.Deploy.Exceptions.RemoteApiException ... inner Newtonsoft.Json.JsonReaderException with message: Unexpected character encountered while parsing value: P. Path '', line 1, position 1.) · Issue #70 · umbraco/Umbraco.Deploy.Issues · GitHub

While attempting to transfer a content node from local to live, I got this error. The udi provided matches the node I am attempting to transfer, but this message doesn't indicate which property might be causing an issue.

The node in question opens in the back-office without any error messages appearing. Additionally, the node renders fine on the front-end. Other nodes of this type are able to be transferred, so it is not a general doctype issue.

By making a copy of the "bad" node and deleting property data until I was able to successfully transfer, I pinpointed the issue.

There was a simple "text" type property editor in one of the rows in a Grid Control in which I had typed some text inside square brackets. This specific data was what was causing the JSON issue. If I removed the brackets from the text, the node transferred without any error.

Reproduction Steps
  1. Create a content node of a type which includes a grid control
  2. Add a row and add in a "text" type grid editor.
  3. Where it says "Write here...", type in "[Test]"
  4. Save & Publish
  5. Attempt to transfer the node.
Desired Behavior

Ideally, my content nodes would transfer without problems - Grid control data should be properly "escaped" since there is no indication that including square brackets in text would be illegal.

Specifics Version info

Umbraco Id
Umbraco 8.15.3
Deploy 4.1.4
Forms 8.7.4

Error Message
The source environment has thrown a Umbraco.Deploy.Exceptions.RemoteApiException with message: The remote API has thrown an exception. It might have been caused by an inner Newtonsoft.Json.JsonReaderException with message: Unexpected character encountered while parsing value: T. Path '', line 1, position 1.

The following artifacts might be involved:

umb://document/e8aa6cedd32a49fbb68c9d1136424ff5
The technical details may contain more information.
f11d65e9 - Executing, 20% - Create manifest on source
❤
❤
f11d65e9 - Executing, 25% - Review manifest on target
f11d65e9 - Executing, 28% - Negotiate files transfer.
❤
f11d65e9 - Executing, 30% - Create package on source
f11d65e9 - Executing, 32% - Transfer 0 files.
f11d65e9 - Executing, 32% - Complete local session
f11d65e9 - Executing, 35% - Process package on target
f11d65e9 - Executing, 80% - Exception!
f11d65e9 - Executing, 80% - Abort remote session
f11d65e9 - Failed, 80% - Total time 00:00:15.708.

-- EXCEPTION ---------------------------------------------------
 (proper exception traces at the end of this log)
Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: T. Path '', line 1, position 1.
Umbraco.Deploy.Exceptions.ProcessArtifactException: Process pass #4 failed for artifact umb://document/e8aa6cedd32a49fbb68c9d1136424ff5.
 On: <umb://document/e8aa6cedd32a49fbb68c9d1136424ff5>
Umbraco.Deploy.Exceptions.RemoteApiException: The remote API has thrown an exception.
-- UDIS --------------------------------------------------------
<umb://document/e8aa6cedd32a49fbb68c9d1136424ff5>
----------------------------------------------------------------

EXCEPTION:

Umbraco.Deploy.Exceptions.RemoteApiException: The remote API has thrown an exception.
   at Umbraco.Deploy.Environments.RemoteUmbracoEnvironment.<SucceedOrThrow>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Umbraco.Deploy.Environments.RemoteUmbracoEnvironment.<WaitAction>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Umbraco.Deploy.Environments.RemoteUmbracoEnvironment.<ProcessPackageAsync>d__43.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Umbraco.Deploy.Work.WorkItems.DeployRestoreWorkItemBase.<ProcessPackage>d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ExecuteAsync>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Umbraco.Deploy.Work.WorkItems.SourceDeployWorkItem.<ExecuteAsync>d__16.MoveNext()

REMOTE:
Umbraco.Deploy.Exceptions.ProcessArtifactException: Process pass #4 failed for artifact umb://document/e8aa6cedd32a49fbb68c9d1136424ff5.

   at Umbraco.Deploy.Environments.CurrentEnvironment.ProcessArtifacts(IEnumerable`1 arts, IDeployContext context, CancellationToken token)
   at Umbraco.Deploy.Environments.CurrentEnvironment.ProcessPackageAsync(Guid sessionId, Package package, CancellationToken token)
   at Umbraco.Deploy.Environments.EnvironmentController.<>c__DisplayClass14_0.<<BeginProcessPackage>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Umbraco.Deploy.Work.WorkItems.SessionWorkItem.<ExecuteAsync>d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Umbraco.Deploy.Work.WorkItems.SessionWorkItem.WaitIdle()
   at Umbraco.Deploy.Environments.EnvironmentController.WaitIdle(SessionActionModel model)
   at lambda_method(Closure , Object , Object[] )
   at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass6_2.<GetExecutor>b__2(Object instance, Object[] methodParameters)
   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.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__6.MoveNext()
--> Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: T. Path '', line 1, position 1.

   at Newtonsoft.Json.JsonTextReader.ParseValue()
   at Newtonsoft.Json.Linq.JContainer.ReadTokenFrom(JsonReader reader, JsonLoadSettings options)
   at Newtonsoft.Json.Linq.JArray.Load(JsonReader reader, JsonLoadSettings settings)
   at Newtonsoft.Json.Linq.JToken.ReadFrom(JsonReader reader, JsonLoadSettings settings)
   at Newtonsoft.Json.Linq.JToken.Parse(String json, JsonLoadSettings settings)
   at Umbraco.Deploy.Connectors.GridCellValueConnectors.DefaultGridCellValueConnector.SetValue(GridControl control)
   at Umbraco.Deploy.Connectors.ValueConnectors.GridValueConnector.FromArtifact(String value, PropertyType propertyType, Object currentValue)
   at Umbraco.Deploy.Connectors.ServiceConnectors.ContentConnector.ContentConnectorBase`2.SetVariantPropertyValue(IDictionary`2 artifactPropertyValues, Property currentProperty, PropertyType propertyType, Boolean currentContentIsPublished)
   at Umbraco.Deploy.Connectors.ServiceConnectors.ContentConnector.ContentConnectorBase`2.UpdatePropertyType(TContent content, IDictionary`2 artifactProperties, Boolean currentContentIsPublished, PropertyType propertyType, IEnumerable`1 cultures)
   at Umbraco.Deploy.Connectors.ServiceConnectors.ContentConnector.ContentConnectorBase`2.MapContentProperties(TContent content, IEnumerable`1 propertyTypes, IDictionary`2 artifactProperties, Boolean currentContentIsPublished)
   at Umbraco.Deploy.Connectors.ServiceConnectors.ContentConnector.DocumentConnector.Process4(DeployState state, IDeployContext context, Int32 pass)
   at Umbraco.Deploy.Environments.CurrentEnvironment.ProcessArtifacts(IEnumerable`1 arts, IDeployContext context, CancellationToken token)


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4