Indeed! documentation is bit unclear, an example command not work for windows, I did manage to install successfully, I have sent the message to fix the documentation, I will leave the comment in the documentation.
Try the following steps to fix the installation of DXA Model Extension:
Create the extensions folder in content service root.
Copy the ...
Instead of directly accessing the DXA Model Service, you can let your DXA Web Application act as a REST Service.
Any DXA Web Application can serve raw View Model data as JSON OOTB (try suffixing your Page URLs with ?format=json).
If you only access raw View Model data, you don’t need to have server-side Views (because you don’t do server-side rendering). ...
Kudos to Velmurugan; following his suggestion I found that debugging of the DXA Model Service is very straight forward by using the remote debugging feature. It's a 2 step process:
Configuring remote debugging in IntelliJ IDEA
Add remote debugging JVM parameters to the start script of the DXA Model Service
Nice benefit of using remote debugging instead of ...
The short answer is that you can add these parameters to either the start or the installService scripts, with the caveat that if you add it when calling installService you will need to first uninstall the service for it to take effect.
Finally, Found the culprit by doing the detailed TRACE logs analysis and fixed.
It's because of below two items are not published from CMS.
Sitemap [Navigation] - Categories and Keywords
Generate Data Presentation - Dynamic Component Presentation (DCP)
DXA PublishMappings TBB. That TBB Publishes schema and region mapping information in JSON format.
In DXA if you publish the Publish Settings page with Core (Module Configuration) component then in the background, These binaries are named like schemas.json are getting published and also have that name (excl. file extension) as variant ID to Broker DB.
The Model Service will remove all component links which cannot be resolved to a proper html link.
The only work around I'm aware of of is to disable RTF component link resolving completely.
This can be done by changing the dxa.properties value -> "dxa.defaults.rich-text-resolve=false".
That way all Component links will be sent across unresolved.
Now the ...
DXA uses an MVC architecture; the data coming from CM is represented by a (Data) Model. These Data Models are expected to be in a certain (JSON) format. DXA 2.0 supports either DXA R2 format or DD4T format.
By default, the DXA Page Controller handles almost all URLs and expects the CM data to represent a Page Data Model (in either format).
If you want to ...
What is meant by that statement is that the DXA 2.0 Model Service should not be considered a Public API.
That means that you should not communicate with the DXA Model Service directly in your implementation, because there is no guarantee that its API will stay compatible in future versions.
This is not just a hypothetical disclaimer: the Model Service in ...
I agree with @Rick answer DXA Model Service is not a public API.
Since you have created one parent publication with 2 child publication multilingual websites and also you have configured the same domain with different relative URL of the multilingual website.
Actually, you have tried to access direct Model service URL did not pass correct full URL of the ...
Please note that the DXA Model Service is not a public API, so I presume this Question is just out of curiosity.
As @Velmurugan mentioned, the Model Service URL contains both the Publication ID and the full URL path of the Page.
Indeed, this may seem redundant, but it is not in all situations. DXA supports mapping different domains to different ...
The issue is now reported on GitHub. I found out that there are multiple issues when working with the DXA Model Service together with DD4T. There is an issue related to keywords and there seems also to be an issue with the DD4T.Providers.DxaModelService package, when retrieving Component Presentations with the methods: ComponentPresentationFactory....
You are not the only one who doesn’t understand the role of the DXA Resolver.
The keywords here are “Dynamic Expansion” and “Data Presentations”. Try searching for those terms on Stack Exchange and in DXA docs.
The expandLinkDepth is not ...
Try publishing the keyword objects themselves to the Broker that are used in the Page. The new Publishing Model does not include the keyword information at publish time, and instead tries to request it at Delivery time from the Broker, and for this, you will need the keyword published. I recall seeing this in the SDL Live Docs but cannot find it at this ...
Assuming that in your scenario, your View Model represents a Component Presentation which is part of a Page, we can focus on the Page Model JSON (which is correctly DD4T JSON).
There is a problem with this Page Model JSON: you can see that the “image” field is a MultiMedia link field and the JSON includes the expanded linked MM Component. However the ...
It was an environment issue. DXA web application was deployed on load balance environment have two windows application server and we configured one cluster between two application that cluster was causing issue so we have added localhost entry in host file and resolved the issue
We were able to publish static files to the broker database using the same approach as the Publish Settings Page (Sdl.Web.Tridion.Templates).
Instead of publishing as a page, we published the files as binaries with the url set to the /_System/assets/ structure group.
protected const string JsonMimetype = "application/json";
protected const string ...
It's related to DD4T compressed JSON.
To fix this issue disable the compress JSON output on the DD4T templates on both CT and PT and republish the pages and DCPs.
Model Service supports DXA R2 format and DD4T format, maybe not compressed output.
DXA 2 data format is more compact and will probably make publishing a bit faster. you might consider to replace ...
The Website Base URL confugured in Topology Manager is used in several places, including the “View On Site” Feature in the CME.
For that purpose, you want to set the Base URL to the actual (remotely accessible) URL of your Website, even if the web app doesn’t do Publication URL resolving.
DXA Model service error in Postman
The above error occurred as DXA Model service capability is not added to discovery service as ContentServiceCapability node got added by mistake under WebCapabilty node as shown below in cd storage config of discovery service.
<Role Name="ContentServiceCapability" Url="Computer name:...