4 Replies Latest reply: Dec 19, 2012 9:14 AM by endecaChip RSS

    Using Endeca SEO in ATG

    Ravi Honakamble|
      Hi All,

      Does anyone worked on using Endeca SEO in ATG? I have tried it and works with base setup but facing some issue with Nucleus namespace while configuring misc-path.

      For Testing purpose I have configured SEO components in ATG DAF framework.

      Example:
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\SeoUrlFormatter.properties
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\StringFormatterChain.properties
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\SeoNavStateFormatter.properties
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\SeoDimLocationFormatter.properties
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\BasicUrlFormatter.properties
      ATG\ATG10.1.1\DAF\Endeca\Assembler\config\atg\endeca\url\basic\BasicQueryBuilder.properties
      etc...

      ERROR MESSAGE From the JBOSS Log:
      ---------------------------------------------
      09:46:05,353 ERROR [nucleusNamespace.] Unable to set configured property "/atg/endeca/url/basic/SeoDimLocationFormatter.key" atg.nucleus.ConfigurationException: Unable to resolve component /atg/endeca/url/basic/product.category
      ---------------------------------------------
      SeoDimLocationFormatter.properties
      --------------------------------------------------------------------------------------
      $class=com.endeca.soleng.urlformatter.seo.SeoDimLocationFormatter
      $scope=global

      key=product.category  -- This is causing the Issue...This is getting treated as another component reference but SeoDimLocationFormatter has key as Object type
      appendRoot=true
      appendAncestors=true
      appendDescriptor=true
      separator=-
      rootStringFormatter=StringFormatterChain
      ----------------------------------------------------------------------------------------

      Does anyone has samples on misc-path definition in ATG?

      Help will be much appreciated.

      Thanks & Regards,
      Ravi
        • 1. Re: Using Endeca SEO in ATG
          Kishore Bellamkonda
          Hi Ravi,

          I started working on Endeca SEO in ATG. i followed spring discover-electronics SEO implementation and created ATG components Accordingly .

          i'm able to generate the Endeca SEO URLs. But the problem is not able to get the results.

          please let me know what would be the root cause ?





          Thanks,
          -Kishore
          • 2. Re: Using Endeca SEO in ATG
            Ravi Honakamble|
            Hi Kishore,

            It would be problem with your configuration. I don't see any problem with seeing SEO url's and results associated to it for base configuration but facing problem while configuring advance SEO features like config-path. Is it possible for you to share the components created using Spring App?

            Regards,
            Ravi
            • 3. Re: Using Endeca SEO in ATG
              sameerdh
              1) set key to a property..

              SeoDimLocationFormatter.properties

              key=ProductCategoryKey

              2) create ProductCategoryKey.properties

              ProductCategoryKey.properties
              $class=java.lang.String
              $instanceFactory=/atg/dynamo/nucleus/ParameterConstructorInstanceFactory
              $constructor.param[0].value=product.category
              $constructor.param[0].type=String

              Hope it helps... for more details refer Oracle docs.

              Sameer
              • 4. Re: Using Endeca SEO in ATG
                endecaChip
                Just weighing in here. To create site URLs, the current revision of the Endeca Sitemap Generator (v2.1.1) uses Spring configuration. Specifically, the Endeca Sitemap Generator does not know how to consume UrlFormatter configuration specified using Nucleus. As such, if you configure your UrlFormatter (and associated classes) with Nucleus, then you will need to manage two separate versions of your UrlFormatter configuration: a Nucleus version for your application and a Spring version for the Sitemap Generator.

                Without getting into any specifics, the purpose of the Endeca Sitemap Generator is to create sitemaps within a multi-dimensional navigation space. This is a unique problem (and big SEO opportunity) for faceted search sites. This is not something that you'll get with any generic sitemap generation utility.

                With the above in mind, my understanding is that the forthcoming version of CRS will use the NucleusPublisher mechanism to resolve UrlFormatter components that are managed within a Spring context. While not ideal in the long-term, this does allow you to manage a single UrlFormatter configuration, which can be shared between your application and the Sitemap Generator.

                For reference, here's the doc link for the NucleusPublisher:
                http://docs.oracle.com/cd/E26180_01/Platform.94/ATGProgGuide/html/s0212nucleuspublisher01.html

                Best regards,
                Chip