Try to run virto storefront had error on Graphql

Try to run virto storefront by setup from document but I had this error when run virto storefront.

index.js:39 Uncaught (in promise) ApolloError: GraphQL.Validation.Errors.FieldsOnCorrectTypeError: Cannot query field 'store' on type 'Query'.
GraphQL.Validation.Errors.FieldsOnCorrectTypeError: Cannot query field 'englishName' on type 'CurrencyType'.
GraphQL.Validation.Errors.FieldsOnCorrectTypeError: Cannot query field 'cultureName' on type 'CurrencyType'.
GraphQL.Validation.Errors.KnownTypeNamesError: Unknown type LanguageType. Did you mean 'ImageType', 'PageType', 'FacetRangeType', 'LineItemType', or 'ContractType'?
    at new t (index.js:39:28)
    at QueryManager.js:756:47
    at p (asyncMap.js:22:31)
    at asyncMap.js:11:72
    at new Promise (<anonymous>)
    at Object.then (asyncMap.js:11:24)
    at Object.next (asyncMap.js:24:49)
    at GO (module.js:132:18)
    at Jh (module.js:176:3)
    at t.next (module.js:225:5)
await in t.next (async)		
(anonymous)	@	main.ts:3
Show 19 more frames

what did I do wrong from setting?

Could you explain your configuration? Which OS? Which version of the theme, storefront, platform, modules? Are you using sample data set?

This is my config on storefront

{
  "ConnectionStrings": {
    "ContentConnectionString": "provider=LocalStorage;rootPath=~/cms-content"
    // Set this connection string to switch the cache to hybrid mode. The Redis server will keep the local memory cache of multiple instances in a consistent state.
    //"RedisConnectionString": "127.0.0.1:6379,ssl=False"
  },
  "VirtoCommerce": {
    "DefaultStore": "B2B-store",
    "StoreUrls": {
      // Define  mapping of  concrete stores with public urls in this section
      //"{store id}":"{store public url}"
    },
    "CacheEnabled": "true",
    "CacheSlidingExpiration": "0:10:0",
    //The setting  responds of frequency storefront requests to platform /api/changes/lastmodifieddate to get the latest timestamps of any data changes and use it for the cached data expiration,
    //any data changes in the platform side will invalidate all data cache in storefront because of hard to implement graceful cache invalidation for dependencies
    "ChangesPollingInterval": "0:0:15",
    "Redis": {
      // The name of the channel. All instances with the same ChannelName will only receive events within their own channel.
      "ChannelName": "VirtoCommerceStorefrontChannel",
      "BusRetryCount": 3
    },
    "PageSizeMaxValue": 100,
    "Endpoint": {
      "Url": "http://arcadiadev.ddns.net:5000/",
      // Use AppId and SecretKey for Platform API authentication (has higher priority than UserName/Password)
      //"AppId": "27e0d789f12641049bd0e939185b4fd2",
      //"SecretKey": "34f0a3c12c9dbb59b63b5fece955b7b2b9a3b20f84370cba1524dd5c53503a2e2cb733536ecf7ea1e77319a47084a3a2c9d94d36069a432ecc73b72aeba6ea78",

      // Use client credential flow for Platform API authentication
      //"ClientId": "",
      //"ClientSecret": "", 

      // Use UserName and Password for Platform API authentication
      "UserName": "admin",
      "Password": "Admin1234",
      "RequestTimeout": "0:0:30"
    },
    "LiquidThemeEngine": {
      "RethrowLiquidRenderErrors": false,
      // The path to the base theme that will be used to discover the theme resources not found by the path of theme for current store.
      // This parameter can be used for theme inheritance logic.
      // Example values: Electronics/default_theme -> wwwroot/cms-content/Themes/Electronics/default_theme
      "BaseThemePath": "B2B-store/default",
      // Set to true if you want to merge current theme settings with base theme settings instead of placement
      "MergeBaseSettings": false
    },
    "RequireHttps": {
      "Enabled": false,
      "StatusCode": "308",
      "Port": "443"
    },
    "AzureBlobStorage": {
      "PollForChanges": true,
      "ChangesPollingInterval": "0:0:15"
    },
    // This option sets how notification is delivered in reset password workflow. Possible values: "Email", "Phone".
    "ResetPasswordNotificationGateway": "Email",
    // This option sets how notification is delivered in two factor authentication workflow. Possible values: "Email", "Phone".
    "TwoFactorAuthenticationNotificationGateway": "Phone"
  },
  "CookieAuthenticationOptions": {
    "Cookie": {
      "HttpOnly": true
    },
    "ExpireTimeSpan": "00:30:00",
    "LoginPath": "/sign-in",
    "LogoutPath": "/sign-out",
    "AccessDeniedPath": "/error/accessdenied",
    "SlidingExpiration": true
  },
  "IdentityOptions": {
    "Password": {
      "RequiredLength": 8,
      "RequireDigit": false,
      "RequireNonAlphanumeric": false
    },
    "Lockout": {
      "DefaultLockoutTimeSpan": "0:15:0"
    }
  },
  "SnapshotCollectorConfiguration": {
    "IsEnabledInDeveloperMode": false,
    "ThresholdForSnapshotting": 1,
    "MaximumSnapshotsRequired": 3,
    "MaximumCollectionPlanSize": 50,
    "ReconnectInterval": "00:15:00",
    "ProblemCounterResetInterval": "1.00:00:00",
    "SnapshotsPerTenMinutesLimit": 1,
    "SnapshotsPerDayLimit": 30,
    "SnapshotInLowPriorityThread": true,
    "ProvideAnonymousTelemetry": true,
    "FailedRequestLimit": 3
  }
}

Run on Linux and theme is vc-theme-b2b-vue, storefront and platform ,I cloned from dev repo.

@commond140
I think some thing wrong with backend configuration.

Is it possible to get temporary access to your backend (virto commerce)? If yes, send domain and credentials to support@virtocommerce.com, we will review configuration and do test API call from postman.

If No, could you:

  1. Share http://arcadiadev.ddns.net:5000/health result
  2. Share Platform Information Details
  3. Do you see any errors in the platform log(console) when you do API call?

this is health check result:

{
  "Modules health": {
    "Data": {},
    "Description": "All modules are loaded",
    "Duration": "00:00:00.0001113",
    "Exception": null,
    "Status": "Healthy",
    "Tags": [
      "Modules"
    ]
  },
  "Cache health": {
    "Data": {},
    "Description": "Cache is active",
    "Duration": "00:00:00.0000015",
    "Exception": null,
    "Status": "Healthy",
    "Tags": [
      "Cache"
    ]
  },
  "Redis health": {
    "Data": {},
    "Description": null,
    "Duration": "00:00:00.0027657",
    "Exception": null,
    "Status": "Healthy",
    "Tags": [
      "Cache"
    ]
  }
}

this is file platform info:

@commond140, finally, could you Capture web session traffic - support - Virto Commerce when you open frontend application and share HAR file?

This is HAR file:

I already updated the modules and it works now.

1 Like

:fire: Thank you for the update

I know this is an old topic, but seems like there has been something still exists.
I am getting the same error. I got all the modules updated. M storefront has the same appsetting. Only difference is, I am running platform on the same machine. Both of these are running on my local. Is there any known fix for this?
Appreciate your help!

Here are the health results of the platform

{
  "Modules health": {
    "Data": {},
    "Description": "All modules are loaded",
    "Duration": "00:00:00.0012308",
    "Exception": null,
    "Status": "Healthy",
    "Tags": [
      "Modules"
    ]
  },
  "Cache health": {
    "Data": {},
    "Description": "Cache is active",
    "Duration": "00:00:00.0012243",
    "Exception": null,
    "Status": "Healthy",
    "Tags": [
      "Cache"
    ]
  },
  "Redis health": {
    "Data": {},
    "Description": "RedisConnectionString is not confgired",
    "Duration": "00:00:00.0013513",
    "Exception": null,
    "Status": "Degraded",
    "Tags": [
      "Cache"
    ]
  }
}

Which version of Virto Frontend and Virto Commerce do you use?