The /atg/endeca/assembler/cartridge/manager/MdexResource component is a request-scoped component that represents a connection to a single MDEX. The NucleusAssembler uses this component to connect to the correct MDEX for content.

The MdexResource component typically uses a $basedOn property to reference either a DefaultMdexResource component or some other component that can resolve which MDEX to connect to when an application is supported by multiple MDEX instances. For example, a multi-language application may use a single MDEX for all of its languages or it may have a separate MDEX for each language. For the single MDEX case, the MdexResource component references the DefaultMdexResource component, which is configured to connect to that single MDEX. For the multiple MDEX case, Oracle ATG Web Commerce ships with a PerLanguageMdexResourceResolver component that can determine which MDEX to connect to based on the locale of the current request.

The following sections provide some additional details on the DefaultMdexResource and PerLanguageMdexResourceResolver components themselves.

Note: For more details on using $basedOn properties, see the ATG Platform Programming Guide.

DefaultMdexResource

Out of the box, the MdexResource component references the /atg/endeca/assembler/cartridge/manager/DefaultMdexResource component. The DefaultMdexResource component is an instance of com.endeca.infront.navigation.model.MdexResource class and is request-scoped. It has host and port properties that determine which MDEX to connect to.

PerLanguageMdexResourceResolver

The /atg/endeca/assembler/cartridge/manager/PerLanguageMdexResourceResolver component is a request-scoped instance of the atg.endeca.assembler.navigation.PerLanguageGenericReference class. The PerLanguageGenericReference class attempts to resolve a component using a base component path with an additional language-specific suffix. If the PerLanguageGenericReference class cannot resolve the component, it tries to resolve the component using a defaultComponentPath property instead.

Because it is intended to resolve the path to an MdexResource component, the PerLanguageMdexResourceResolver component specifies the following for its defaultComponentPath and componentBasePath properties:

# The default MdexResource to use if a language-specific MdexResource
# cannot be found.
defaultComponentPath=/atg/endeca/assembler/cartridge/manager/DefaultMdexResource

# The base path for language specific MdexResource components. This
# will have suffixes like "_en" and "_es" tacked on.
componentBasePath=/atg/endeca/assembler/cartridge/manager/MdexResource
Additional Multi-Language Configuration Requirements

For each language-specific MdexResource component, you should create a properties file in the /atg/endeca/assembler/cartridge/manager Nucleus path that specifies the host and port for the MDEX that supports that language. For example:

$basedOn=DefaultMdexResource

# Mdex host
host=hostname

# Mdex port
port=port_number

Copyright © 1997, 2012 Oracle and/or its affiliates. All rights reserved.

Legal Notices