title: Hybris Custom WSDTO on hybris product data
body: <p>Hi I had created eProductForm bean in the commerecefacades-beans.xml I added custom attribute of ProductData.</p>
  
  <pre><code>&lt;bean class="de.hybris.platform.commercefacades.product.data.ProductData"&gt;
  &lt;property name="eProductForm" type="String"/&gt;    
  &lt;/bean&gt;
  </code></pre>
  
  <p>then in commercewebservice-beans.xml, I added the custom attribute of ProductWsDTO</p>
  
  <pre><code>&lt;bean class="de.hybris.platform.commercewebservicescommons.dto.product.ProductWsDTO"&gt;
  &lt;property name="eProductForm" type="String"/&gt;&lt;/bean&gt;
  </code></pre>
  
  <p>from SearchResultProductPopulator populated productdata of eProductForm from my search result.</p>
  
  <pre><code>target.setEProductForm(this.&lt;String&gt; getValue(source, "E_PRODUCT_FORM"));
  </code></pre>
  
  <p>PFB
  dto mapping</p>
  
  <pre><code>&lt;bean parent="fieldSetLevelMapping" id="productWsDTOFieldSetLevelMapping"&gt;
   &lt;property name="dtoClass"   value="de.hybris.platform.commercewebservicescommons.dto.product.ProductWsDTO"/&gt;
  &lt;property name="levelMapping"&gt;
  &lt;map&gt;
  &lt;entry key="BASIC"
        value="purchasable,stock,name,baseProduct,availableForPickup,code,url,price"/&gt;
  &lt;entry key="DEFAULT"
        value="summary,averageRating,purchasable,stock(DEFAULT),description,variantMatrix(DEFAULT),name,baseOptions(DEFAULT),baseProduct,availableForPickup,variantOptions(DEFAULT),code,url,price(DEFAULT),numberOfReviews,manufacturer,categories(BASIC),priceRange,multidimensional,configuratorType,configurable,tags"/&gt;
  &lt;entry key="FULL"
        value="summary,productReferences(FULL),classifications(FULL),averageRating,purchasable,volumePrices(FULL),variantType,stock(FULL),description,variantMatrix(FULL),name,baseOptions(FULL),baseProduct,availableForPickup,variantOptions(FULL),reviews(FULL),code,url,price(FULL),numberOfReviews,manufacturer,volumePricesFlag,futureStocks(FULL),images(FULL),categories(FULL),potentialPromotions(FULL),priceRange,multidimensional,configuratorType,configurable,tags,eProductForm,ePickledGroup"/&gt;
  &lt;/map&gt;
  &lt;/property&gt;
  &lt;/bean&gt;
  </code></pre>
  
  <p>Below is the code I am calling Mapper.. While I debugged my code sourceresult is having product data of that custom attreibute. But I am not getting the eproductform in the WSDTO response.</p>
  
  <pre><code>final ProductSearchPageData&lt;SearchStateData, ProductData&gt; sourceResult = searchProducts(query, currentPage, pageSize, sort);
      if (sourceResult instanceof ProductCategorySearchPageData)
      {
          return getDataMapper().map(sourceResult, ProductCategorySearchPageWsDTO.class, fields);
      }
  </code></pre>
  
  <p>But in logs I see: </p>
  
  <blockquote>
    <p>[EL Warning]: 2019-02-20 18:31:27.341--Ignoring attribute
    [eProductForm] on class
    [de.hybris.platform.commercewebservicescommons.dto.product.ProductWsDTO]
    as no Property was generated for it.</p>
  </blockquote>