If you face a problem while working with Customer's Canvas or setting it up, you can find a solution below. This topic covers the following areas:
Visual Studio shows the following Unsupported message when compiling the project.
After you open the migration report which is displayed after the solution is loaded, you will most likely see the following message.
Start the repair process for your Microsoft Visual Studio, check the Web Developer Tools in the list of optional components, and finish repairing your IDE.
When you compile the solution, Visual Studio complains that it cannot find NewtonSoft.Json
or other libraries.
Check if the Enable NuGet Package Restore option is enabled in the solution.
When you compile the solution, Visual Studio throws several errors saying that certain code works only with ECMAScript 6 or higher.
Update your TypeScript to version 3.8.2.
When you compile the solution, Visual Studio throws a bunch of TypeScript errors.
Check your TypeScript version:
If you have a different version, install TypeScript 3.8.2.
Customer's Canvas launches on your development computer, but you are having trouble getting it deployed to a production Windows server.
Most likely, the prerequisites have not been met. Try to follow the instructions for deploying Customer's Canvas to your server; make sure that the following components are installed on your system:
vcredist_x64.exe
and vcredist_x86.exe
filesYou get an HTTP error 403 or 404.
Check that you put the correct site name in the CcIframeApiScript URL. Make sure that the site opens in the browser.
You get the No license key has been found server error.
The editor has checked AppSettings.config
, Aurigma.GraphicsMill.lic
, and the Windows Registry and has not found license keys. Register your license key as described in the corresponding topic.
You get one of the following server errors:
CustomersCanvas.Licensing.dll
assembly is corrupted.Contact our support team to select a proper license type.
You get the following message while opening a page: "This configuration section cannot be used at this path".
Install the ASP.NET 4.5 feature for IIS. You can do this in the following way:
On Windows 7 or 8:
On Windows Server 2008 and Windows Server 2008 R2:
On Windows Server 2012:
You get the following error while launching the project on your old computer (like Windows 7).
Upgrade Internet Explorer to the latest version on your server where the project runs. This is required even if your users open the application in different browsers on client computers because the IE engine is needed for LESS compilation on the server side.
You get the following error while launching the project.
Disable ASP.NET impersonation:
When you download files using web browsers or get them from email clients, Windows may lock them for security reasons. So, when you download the Customer's Canvas archive from our server and try to deploy it to your server, you may get such errors:
Unlock the archive by clicking the Unblock button in the Properties window.
It takes too long to start working with Customer's Canvas.
To avoid the suspension of the Customer's Canvas application pool, perform the following:
Install the Application Initialization role. In Windows Server 2012 and higher, in the Add Roles and Feature Wizard, select the Application Initialization check box.
In IIS Manager, right-click the Customer's Canvas application pool, and then click Advanced Settings. Set the Start Mode option to AlwaysRunning and Idle Time-out (minutes) to 0.
On the left pane of IIS Manager, in the Sites list, navigate to your Customer's Canvas application. Right-click the application node and select Manage Application > Advanced Settings. Set Preload Enabled to True.
At the command prompt while running as an administrator, type iisreset to restart IIS.
For more details, refer to the Scalability of Customer's Canvas topic.
To ensure a smooth transition to a new version of the Design Editor, follow our step-by-step instructions.
When you upgrade to Customer's Canvas 4.0, the preloader does not appear in the Design Editor.
Customer's Canvas 4.0 introduces breaking changes in the preloader feature. Now, you set up this feature through the preloader object in IConfiguration which enables the preloader by default. So, if you already customized the preloader and want to keep your implementation, please set the enabled property of the preloader object to false
when migrating from any 3.x.x release to 4.x.
Updates for Customer's Canvas are regularly released. So, when you contact our support team, you may be asked about your editor version number. To get it, do the following:
How can you find a root cause of an error? In the best-case scenario, it is shown in the Developer Tools Console or right in the editor's IFRAME where Customer's Canvas is supposed to be loaded.
If you are not sure what is causing the error, you need to find out where it is occurring: on the client or on the server side.
If there is a failed HTTP request (it should be highlighted in red with a 50x code, like 500, 502, etc.), then the error is occurring on the server side. Otherwise, it is occurring on the client side, and it is most likely a JavaScript error.
To analyze the server side error, select the failed request on the Network tab and then switch to the Response (Preview) tab. The response contains either a descriptive message or a text like "An error has occurred". In the latter case, you should analyze logs on your server. Customer's Canvas provides two types of such logs:
~\Resources\Logs\All.log
file.~\Resources\Logs\*.xml
.If you face an error while integrating or debugging Customer's Canvas, check the Elmah's files first. Consider the All.log
file as an auxiliary, you can refer to it if you think that Elmah does not include some messages or the logs it saves are too complicated.
If an error occurs while running Customer's Canvas, both of these logs can be useful for our support team.
You can get the Elmah's logs through a web interface. Usually, the Elmah's interface is available only on your server, so do the following to check them:
If you find it difficult to log in through RDP every time, you can get web access to the interface as Elmah wiki describes. To enable web access, set the allowRemoteAccess attribute to "true"
in the web.config
file.
<configuration> <elmah> <security allowRemoteAccess="true" /> </elmah> </configuration>
Allowing the remote access to your server is not secure, so it is recommended only for development computers.
Also, you can set up your site so that it provides detailed ASP.NET errors - not just "An error has occurred" - to both your local host and remote clients. To perform this, set the mode attribute of customErrors to "Off"
in web.config
. By default, this attribute is RemoteOnly and shows custom errors to the remote clients and ASP.NET errors to the local host only.
<configuration> <system.web> <customErrors mode="Off" /> </system.web> </configuration>
Providing ASP.NET errors to remote clients can be insecure, so it is recommended only for debugging purposes.
You may want to change the location of data folders in Customer's Canvas, like the Gallery, Templates, or Cache. To implement this, you need to change these folders in AppSettings.config
, Aurigma.DesignAtoms.config
, and FileCache.config
as the following example shows.
<appSettings> <add key="PublicGalleryFolder" value="C:\EditorFiles\PublicGallery"/> <add key="UserDataFolder" value="C:\EditorFiles\UserData"/> <add key="DesignFolder" value="C:\EditorFiles\designs" /> <add key="MockupFolder" value="C:\EditorFiles\mockups" /> <add key="WatermarkFolder" value="C:\EditorFiles\watermarks" /> <add key="DesignImagesFolder" value="C:\EditorFiles\designImages" /> </appSettings> <Aurigma.DesignAtoms> <add key="FontDirectory" value="D:\Fonts" /> </Aurigma.DesignAtoms> <Aurigma.DesignAtoms.FileCacheConfiguration> <add key="RootPath" value="~/App_Data/FileCache" /> </Aurigma.DesignAtoms.FileCacheConfiguration>
For more details, see the Scalability of Customer's Canvas topic.
If you receive the Could not find a part of path message after you moved the data folders to a network location, set up correct permissions for them. A user account, under which Customer's Canvas runs in ASP.NET/IIS, must have the read/write access to the remote folders. Also, check the solution for the issue with copied content.
You successfully upload small files but cannot upload big images to your server. Also, you may be unable to upload files which names contain spaces.
It might be a problem with IIS server configuration. Check the Maximum allowed content length: in IIS Manager, double-click Request Filtering, and then click Edit Feature Settings.
The default value is almost 30MB, which may not be enough, so set a bigger value. Also, make sure that the Allow double escaping option is enabled to download files which names contain a space character.
You copy fonts or images to your server through a file manager, but they do not show in Customer's Canvas.
A text rendered in Customer's Canvas looks blurred, unlike the same string with the same font settings in Adobe Photoshop.
Check if scaling is applied to the text:
In this case, set a bigger font size instead of scaling the text.
The hi-res output looks faded if your design contains transparent raster layers above vector layers.
Enable the rasterization of vector layers in Aurigma.DesignAtoms.config
by using the PdfHiResRasterizeVectorLayers parameter.
<Aurigma.DesignAtoms> <add key="PdfHiResRasterizeVectorLayers" value="True" /> </Aurigma.DesignAtoms>
You created a template, but colors on the canvas look different from colors in Photoshop.
Customer's Canvas applies color management on the canvas as well as to the hi-res outputs. This web-to-print editor uses profiles embedded in templates as source color profiles to render graphics on the canvas. If there are no color profiles in a template, then a default profile will be used depending on the color space:
These profiles are also used as default destination profiles for rendering hi-res outputs when you don't specify profiles in ~/Configuration/Aurigma.DesignAtoms.config
. To avoid color space conversions, you can both design your templates in Photoshop and edit them in Customer's Canvas by using the destination color profile:
Aurigma.DesignAtoms.config
file. For example, you can specify a CMYK profile as follows:
<Aurigma.DesignAtoms> <add key="CmykColorProfileFileName" value="cmykColorProfile.icc" /> </Aurigma.DesignAtoms>
"True"
.
<Aurigma.DesignAtoms> <add key="PdfRenderDeviceProfileEnabled" value="True" /> </Aurigma.DesignAtoms>
For more details, you can refer to the Color Management in Customer's Canvas topic.
You set a CMYK profile in a PSD template, but hi-res output colors look different from colors in the template.
Customer's Canvas uses color profiles from PSD templates only as source profiles. The default color profile for the CMYK color space is SWOP (Coated), 20%, GCR, Medium. So, if you set the hiResOutputColorSpace property to CMYK but did not set your profile in ~/Configuration/Aurigma.DesignAtoms.config
, then the colors may differ. To set up a color space for hi-res outputs (destination colors):
Aurigma.DesignAtoms.config
file. The following example shows how you can specify the CMYK profile.
<Aurigma.DesignAtoms> <add key="CmykColorProfileFileName" value="cmykColorProfile.icc" /> </Aurigma.DesignAtoms>
configuration = { rendering: { hiResOutputColorSpace: "CMYK", hiResOutputFileFormat: "PDF", hiResOutputDpi: 300 } };
For more details, refer to the Configuring High Resolution and Proof Images topic.
The editor loads in any browser but Firefox. At the same time, no messages show.
Check if the IFRAME element containing the editor has the display:none property. In this case, Customer's Canvas cannot load because of the Gecko engine implementation. So, set the display property to block to load it correctly.
It takes much time to open a product when you load the editor like this:
CustomersCanvas.IframeApi.loadEditor(iframe, productDefinition, config);
And then populate the product with user data:
editor.loadUserInfo(data);
The loadUserInfo method is time-consuming. To improve the load time, we recommend that you pass the data applied in this method right into loadEditor with autoLoadUserInfo enabled.
config.userInfo = data; config.autoLoadUserInfo = true; CustomersCanvas.IframeApi.loadEditor(iframe, productDefinition, config);
You specify fonts for the editor, but the font picker displays more fonts.
In ~/Configuration/AppSettings.config
, check values of the SubstitutionFontPostScriptName and DefaultFontPostScriptName parameters. Customer's Canvas adds these fonts to the list. If these parameters have incorrect Postscript names, then Arial is added by default.
Also, the font picker automatically displays fonts used in your product templates.
When you use PUT or DELETE requests, you may obtain the 405 Method Not Allowed error. At the same time, POST and GET requests may work properly.
You can disable WebDAV in the web.config
file. Add the following code to the <system.webServer> node.
<modules> <remove name="WebDAVModule" /> </modules> <handlers> <remove name="WebDAV" /> </handlers>
Alternatively, you can remove the WebDAV Publishing role from your server.