New KOBI documentation is available: https://adeo-ccdp.gitbook.io/kobi/

Frequently Asked Questions

Help us to improve this documentation. If is missing to answer som questions, you can open an issue.

Sites access

First login

When loging in for the first time on a Designer instance, you won’t have any access on existing sites, an Administrator has to set your roles. You will be prompted for the Site you want to work on, and possibles roles. If you’re not sure about roles you need, feel free to explain your needs in the comment text area.

The Site administrator will receive an email with your request and may validate it.

Adding roles or Sites

If you need to work on another site, you can still create access request through the user setting screen accessible in the upper right corner :

access-settings

access-request

Experiences

I have created an Experience but I have an error when accessing it.

The URL you chose for your experience need to route on a Gluer service, this is a manual action.

  • For LMFR instance, we need to add a route in the deployment provisioning via Turbine. You will need an admin to do it, use the Kobi support channel to ask for your route creation.

I have created an Experience but I cannot see the changes on my module.

Make sure your Application version overrides the default’s one (Experience admin). You might have selected the wrong application version, edit the line and hover the version field to check the application’s URL.

I have created an Experience but i cannot see my new fragment when Designing.

Check the question above. If you’re sure about your version, make sure your Experience is selected in the header next to the Site selection.

A team member created an Experience but I cannot edit it.

Check the Authorization, the creator of the Experience has to add its team members to allow edition.
If that doesn’t solve your issue, you might be missing the global rights to edit Experiences, ask your instance Admins for that (#kobi-support on Slack).


Applications

My Application isn’t visible in Designer

First check that it is correctly registered (Successfully registered application ... in your logs).
If it’s OK, your application should be configurable in an Experience, if you want it to be accessible for everyone it has to be configured in the default Site configuration. Ask your site administrators to do it (#kobi-support for now).

For non Java-Starter users :
If you cannot see your application in your Experiences, even if the logs says it is successfuly registered, you might be missing a /application-version endpoint, that is requested by the Registry to validate the registration.

My Application did not register to Registry

First check that your kobi.registration.base-url is valid !
Then, do you have any logs about what happened during the registration ? If so provide them when you contact kobi support.
If there is no logs it might be that your application is unreachable by the registry (exemple local application start => localhost is unknown to registry). Registration is a two step process, your application POST its definition to registry and then registry use the provided url to ping your application to finish the registration.

My application log “Request entity too large” errors

This is an application configuration issue.

The resolution depends on your application language, for examples :

  • spring-boot server.max-http-header-size: {{size}}

  • node --max-http-header-size={{size}}


Rendering

My page does not look like what I expect

If your page is missing a component (ex: a buy box on a product page), it might not be using the right Page Model.

This may be :

  • A publication issue
  • An URL - Resource association issue (synchronization bewtween a custom resolution API and our stored data).
  • A Backend configuration issue
  • A Backend routing issue (new type not configured)
Publication

Check the Page and/or Page Model, there might have some changes unpublished, or recent publications you are not aware of. Fix and publish.

URL - Resource association

Compare the results of these two APIs requests (replace PRODUCT by another type if needed and ${PRODUCT_ID} by the right resource ID) :

If the resource type and scopes are the same, the source data is wrong (ask for SEO support).
If they are different you can force a resolution by adding the query param mode=force on our API : https://kobi-resolver-rest.prod.leroymerlin.fr/sites/lmfr-site/locales/fr-FR/resources/PRODUCT/{PRODUCT_ID}?mode=FORCE

Backend configuration

A “Legacy” backend (other than Shaper-Web) may include components in its pages (to initiate transition to a full KOBI website).
If your backend does not render fragments as expected it may be a configuration issue, in order to validate that, you can request your backend application directly and add the Via : kobi-gluer header. By checking the page source you should be able to see the KOBI tags <kobi:fragment>....

If you are accessing pages through an Experience URL, take a look at the Backend application version you are using first.

Marcopolo backends use properties configuration to fetch a Page Model from Shaper-rest in order to include the Header and Footer components.
Take a look at your backend kobi.properties configuration :

A Backend routing issue

When using a new resource type for a Page/Model, this won’t be rendered by Shaper until the type is registered in the Site’s configuration - you have to request the site’s admins for this change (#kobi-support).


Requests between Gluer and components

Gluer does not respond to my component request

If your component responds with 413 status and the client with 500 status, then verify the requests made by Gluer to your component by checking Gluer’s logs.

This may be caused by :

  • A header size issue

Check header size

Gluer has 2 parameters to manage header size :

  • vertx.httpserver.max-header-size defines the max header size for incoming request
  • vertx.httpclient.max-header-size defines the max header size for outgoing request

From your module you must provide this property :

  • server.max-http-header-size

server.max-http-header-size defines the max header size for input request.

server.max-http-header-size must be at least as big as vertx.httpclient.max-header-size.

Check the Gluer VertX configuration