Page 2 of 3

Re: Add new field to Details tab of Product

Posted: Fri Aug 02, 2013 3:41 am
by hiteshsingla
Hi phillip,
Thanks for a quick reply but I don't think that i am facing any problem like what you have suggested in the reply.
My custom class looks like this:

Code: Select all

package com.mycompany.core.catalog.domain;

import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.Predicate;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.broadleafcommerce.common.persistence.ArchiveStatus;
import org.broadleafcommerce.common.persistence.Status;
import org.broadleafcommerce.common.presentation.AdminPresentation;
import org.broadleafcommerce.common.presentation.AdminPresentationAdornedTargetCollection;
import org.broadleafcommerce.common.presentation.AdminPresentationClass;
import org.broadleafcommerce.common.presentation.AdminPresentationCollection;
import org.broadleafcommerce.common.presentation.AdminPresentationToOneLookup;
import org.broadleafcommerce.common.presentation.PopulateToOneFieldsEnum;
import org.broadleafcommerce.common.presentation.RequiredOverride;
import org.broadleafcommerce.common.presentation.client.AddMethodType;
import org.broadleafcommerce.common.presentation.client.VisibilityEnum;
import org.broadleafcommerce.common.util.BLCMapUtils;
import org.broadleafcommerce.common.util.DateUtil;
import org.broadleafcommerce.common.util.TypedClosure;
import org.broadleafcommerce.common.vendor.service.type.ContainerShapeType;
import org.broadleafcommerce.common.vendor.service.type.ContainerSizeType;
import org.broadleafcommerce.core.media.domain.Media;
import org.hibernate.annotations.BatchSize;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Index;
import org.hibernate.annotations.Parameter;
import org.hibernate.annotations.SQLDelete;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.OrderBy;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.broadleafcommerce.core.catalog.domain.ProductImpl;


@Entity
@Table(name="BLC_PRODUCT")

public class MyCustomProductImpl extends ProductImpl {

private static final long serialVersionUID = 1L;


@Column(name = "Specifications")
@AdminPresentation(friendlyName = "ProductImpl_Product_Specifications", order=9, group = "ProductImpl_Product_Description", prominent=true, groupOrder=1)
protected String specifications;

public String getSpecifications()
{
return this.specifications;
}

public void setSpecifications(String specifications)
{
this.specifications= specifications;
}

}


I have also created a SpecificationFactoryBean like this :

Code: Select all

package com.marketplace.core.catalog.service;
import org.springframework.beans.factory.FactoryBean;

public class SpecificationsFactoryBean implements FactoryBean {

    public Object getObject() throws Exception {
        String Specifications = null;
        //TODO add some code to create the custom order id
        return Specifications;
    }

    public Class getObjectType() {
        return String.class;
    }

    public boolean isSingleton() {
        return false;
    }

}


What i want to do is that i want one more field for Specifications in the Admin panel just like Description and Long Description and to read its value in my front end.
[ERROR] 13:07:36 ContextLoader - Context initialization failed
[artifact:mvn] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in resource loaded from byte array: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: Foreign key circularity dependency involving the following tables:
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1105)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:915)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[artifact:mvn] at java.lang.reflect.Method.invoke(Method.java:601)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] Caused by: org.hibernate.AnnotationException: Foreign key circularity dependency involving the following tables:
[artifact:mvn] at org.hibernate.cfg.Configuration.buildRecursiveOrderedFkSecondPasses(Configuration.java:1556)
[artifact:mvn] at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1495)
[artifact:mvn] at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1419)
[artifact:mvn] at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1519)
[artifact:mvn] at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:193)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:1100)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:689)
[artifact:mvn] at org.hibernate.ejb.HibernatePersistence.__createContainerEntityManagerFactory(HibernatePersistence.java:73)
[artifact:mvn] at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java)
[artifact:mvn] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:287)
[artifact:mvn] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:310)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452)
[artifact:mvn] ... 55 more
[artifact:mvn] 2013-08-02 13:07:36.554:WARN:oejw.WebAppContext:Failed startup of context o.m.j.p.JettyWebAppContext{/,file:/C:/myproject/Marketplace/DemoSite/site/target/marketplace/},file:/C:/myproject/Marketplace/DemoSite/site/target/marketplace/
[artifact:mvn] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in resource loaded from byte array: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: Foreign key circularity dependency involving the following tables:
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1105)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:915)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[artifact:mvn] at java.lang.reflect.Method.invoke(Method.java:601)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] Caused by:
[artifact:mvn] org.hibernate.AnnotationException: Foreign key circularity dependency involving the following tables:
[artifact:mvn] at org.hibernate.cfg.Configuration.buildRecursiveOrderedFkSecondPasses(Configuration.java:1556)
[artifact:mvn] at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1495)
[artifact:mvn] at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1419)
[artifact:mvn] at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1519)
[artifact:mvn] at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:193)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:1100)
[artifact:mvn] at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:689)
[artifact:mvn] at org.hibernate.ejb.HibernatePersistence.__createContainerEntityManagerFactory(HibernatePersistence.java:73)
[artifact:mvn] at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java)
[artifact:mvn] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:287)
[artifact:mvn] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:310)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1105)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:915)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[artifact:mvn] at java.lang.reflect.Method.invoke(Method.java:601)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] [INFO] Started Jetty Server
[artifact:mvn] 2013-08-02 13:07:36.749:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:8080
[artifact:mvn] 2013-08-02 13:07:36.770:INFO:oejus.SslContextFactory:Enabled Protocols [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2] of [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2]
[artifact:mvn] 2013-08-02 13:07:36.772:INFO:oejs.AbstractConnector:Started SslSelectChannelConnector@0.0.0.0:8443


This i s the all stack trace i found in the console of my Eclipse.
Hope You can suggest me some solution for this.

Re: Add new field to Details tab of Product

Posted: Fri Aug 02, 2013 10:17 am
by phillipuniverse
If you look at the link that I referenced, the underlying problem for forgetting the @Table annotation is because Hibernate attempts to use the same table as the superclass.

If you look at your @Table annotation, you are using @Table("BLC_PRODUCT") which is the exact same table that ProductImpl is annotated with. Change your @Table annotation to use a different table like @Table("MY_CUSTOM_PRODUCT").

If you do in fact want to use single table inheritance you can see how to do that at the bottom of http://docs.broadleafcommerce.org/core/ ... s-tutorial

Re: Add new field to Details tab of Product

Posted: Mon Aug 05, 2013 2:34 am
by hiteshsingla
Thanks Phillip!!
The changes suggested by you made me get rid of that error.
But i have one another problem, how the admin will get reference to this class??
Where i need to define this class in my eclipse workspace??
As i said i earlier i am defining the java file in Demosite>site>src>main>com>mycompany>product>core>domail>MyCustomProductImpl.java
I think i am not defining it on a proper place.That's why while running the admin jetty i got the following error:
[artifact:mvn] [ERROR] 12:21:13 ContextLoader - Context initialization failed
[artifact:mvn] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'blSandBoxDao': Injection of persistence dependencies failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.mycompany.admin.controller.domain.MyCustomProductImpl] for bean with name 'org.broadleafcommerce.core.catalog.domain.ProductImpl' defined in resource loaded from byte array; nested exception is java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:343)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:605)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:925)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at java.lang.reflect.Method.invoke(Unknown Source)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.mycompany.admin.controller.domain.MyCustomProductImpl] for bean with name 'org.broadleafcommerce.core.catalog.domain.ProductImpl' defined in resource loaded from byte array; nested exception is java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1262)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:576)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1331)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:337)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:316)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:303)
[artifact:mvn] at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:144)
[artifact:mvn] at org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManagerFactory(EntityManagerFactoryUtils.java:97)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findNamedEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:512)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:494)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor.java:659)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProcessor.java:632)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:155)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:92)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:340)
[artifact:mvn] ... 56 more
[artifact:mvn] Caused by: java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
[artifact:mvn] at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
[artifact:mvn] at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:424)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:377)
[artifact:mvn] at org.springframework.util.ClassUtils.forName(ClassUtils.java:258)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:417)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1283)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1254)
[artifact:mvn] ... 70 more
[artifact:mvn] 2013-08-05 12:21:13.862:WARN:oejw.WebAppContext:Failed startup of context o.m.j.p.JettyWebAppContext{/admin,file:/C:/Program%20Files/mycompany/DemoSite/admin/target/admin/},file:/C:/Program%20Files/mycompany/DemoSite/admin/target/admin/
[artifact:mvn] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'blSandBoxDao': Injection of persistence dependencies failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.mycompany.admin.controller.domain.MyCustomProductImpl] for bean with name 'org.broadleafcommerce.core.catalog.domain.ProductImpl' defined in resource loaded from byte array; nested exception is java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:343)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:605)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:925)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at java.lang.reflect.Method.invoke(Unknown Source)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] Caused by:
[artifact:mvn] org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.mycompany.admin.controller.domain.MyCustomProductImpl] for bean with name 'org.broadleafcommerce.core.catalog.domain.ProductImpl' defined in resource loaded from byte array; nested exception is java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1262)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:576)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1331)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:337)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:316)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:303)
[artifact:mvn] at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:144)
[artifact:mvn] at org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManagerFactory(EntityManagerFactoryUtils.java:97)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findNamedEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:512)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:494)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor.java:659)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProcessor.java:632)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:155)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:92)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:340)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:605)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:925)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:758)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1233)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:701)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:475)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:167)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:224)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
[artifact:mvn] at org.eclipse.jetty.server.Server.doStart(Server.java:272)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
[artifact:mvn] at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511)
[artifact:mvn] at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364)
[artifact:mvn] at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
[artifact:mvn] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[artifact:mvn] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[artifact:mvn] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[artifact:mvn] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
[artifact:mvn] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[artifact:mvn] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[artifact:mvn] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[artifact:mvn] at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[artifact:mvn] at java.lang.reflect.Method.invoke(Unknown Source)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[artifact:mvn] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
[artifact:mvn] Caused by:
[artifact:mvn] java.lang.ClassNotFoundException: com.mycompany.admin.controller.domain.MyCustomProductImpl
[artifact:mvn] at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
[artifact:mvn] at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
[artifact:mvn] at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:424)
[artifact:mvn] at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:377)
[artifact:mvn] at org.springframework.util.ClassUtils.forName(ClassUtils.java:258)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:417)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1283)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1254)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:576)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1331)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:337)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:316)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:303)
[artifact:mvn] at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:144)
[artifact:mvn] at org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManagerFactory(EntityManagerFactoryUtils.java:97)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findNamedEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:512)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:494)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor.java:659)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor$PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProcessor.java:632)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:155)
[artifact:mvn] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:92)
[artifact:mvn] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:340)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[artifact:mvn] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[artifact:mvn] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:605)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:925)
[artifact:mvn] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:472)
[artifact:mvn] at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:383)
[artifact:mvn] at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)
[artifact:mvn] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
[artifact:mvn] at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:766)
[artifact:mvn] at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:406)
[artifa


Glad if you can guide me where i need to define this custom class,either in Demosite>site or in Demosite>admin or in Demosite>core.

Thanks & Regards
Hitesh Singla

Re: Add new field to Details tab of Product

Posted: Mon Aug 05, 2013 8:27 am
by phillipuniverse
All of your domain and service extensions should be in the core project so that both the site and admin can use them. The services are kinda optional since the Admin doesn't usually use them but all of your entities should be in core.

Re: Add new field to Details tab of Product

Posted: Mon Aug 05, 2013 8:54 am
by Anky
Thanks!
I think you haven't read the question properly.
As per my knowledge What hitesh is trying to ask is where he should create the MyCustomProductImpl.java file ??
in site , admin or in core.

If in core then what should he use the package ?
Currently he is using this package path com.mycompany.core.catalog.domain;

where sholud he define those package path?

Thanks and Regards:-
Ankit Aggarwal

Re: Add new field to Details tab of Product

Posted: Mon Aug 05, 2013 11:48 am
by phillipuniverse
All of your domain classes should be in core.

The package can be whatever you want, it doesn't make a difference. Nothing in Broadleaf forces you into a specific packaging paradigm. However, if I was extending something from Broadleaf, I would probably put it in a similar package that Broadleaf does. For instance, if I was extending ProductImpl I would put it in 'com.mycompany.core.catalog.domain'. If I was extending OrderImpl, I would put it in 'com.mycompany.core.order.domain' etc.

If you have a new entity that doesn't extend from anything in Broadleaf, you can put it in whichever package that you like.

Re: Add new field to Details tab of Product

Posted: Mon Aug 05, 2013 11:49 am
by phillipuniverse
Just to be clear, 'MyCustomProductImpl.java' is classified as a domain extension.

Re: Add new field to Details tab of Product

Posted: Wed Aug 07, 2013 6:59 am
by Anky
Thanks philip!
I have extended my product class.Below is my MyproductImpl class which i have extend.

Code: Select all

package com.marketplace.core.catalog.domain;


import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Lob;
import org.hibernate.annotations.Type;
import org.broadleafcommerce.common.presentation.AdminPresentation;
import org.broadleafcommerce.common.presentation.client.SupportedFieldType;
import org.broadleafcommerce.core.catalog.domain.ProductImpl;

@Entity
@Table(name="BLC_CUSTOM_PRODUCT")

public class MyproductImpl extends ProductImpl {

private static final long serialVersionUID = 1L;
@Lob
@Type(type = "org.hibernate.type.StringClobType")
@Column(name = "Version", length = Integer.MAX_VALUE - 1)
@AdminPresentation(friendlyName="Specification", order=1, group="Template", prominent=true, largeEntry=true, groupOrder=2,fieldType=SupportedFieldType.HTML_BASIC)
protected String version;

@Column(name="Installation")
@AdminPresentation(friendlyName="Installation", order=2, group="Template", prominent=true, groupOrder=2)
protected String installation;

public String getVersion()
{
return this.version;
}


public void setVersion(String version)
{
this.version = version;
}

public String getInstallation()
{
return this.installation;
}

public void setInstallation(String installation)
{
this.installation = installation;
}

}

Now I am facing one more problem.
How can I get version,installation values from MyproductImpl class on product page.
Currently I am using below code on my product page :-

Code: Select all

<div th:object="${MyproductImpl}">
                  <div id="installation_container" class="product_details_container tab-section" th:utext="*{installation}"  ></div>
                  </div>


But i am getting below error.

Code: Select all

[artifact:mvn] org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "installation" (catalog/product:222)
[artifact:mvn]    at org.thymeleaf.spring3.expression.SpelVariableExpressionEvaluator.evaluate(SpelVariableExpressionEvaluator.java:118)
[artifact:mvn]    at org.thymeleaf.standard.expression.SelectionVariableExpression.executeSelectionVariable(SelectionVariableExpression.java:106)
[artifact:mvn]    at org.thymeleaf.standard.expression.SimpleExpression.executeSimple(SimpleExpression.java:403)
[artifact:mvn]    at org.thymeleaf.standard.expression.Expression.execute(Expression.java:230)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionExecutor.executeExpression(StandardExpressionExecutor.java:62)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionProcessor.executeExpression(StandardExpressionProcessor.java:124)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionProcessor.processExpression(StandardExpressionProcessor.java:142)
[artifact:mvn]    at org.thymeleaf.standard.processor.attr.AbstractStandardTextChildModifierAttrProcessor.getText(AbstractStandardTextChildModifierAttrProcessor.java:60)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractTextChildModifierAttrProcessor.getModifiedChildren(AbstractTextChildModifierAttrProcessor.java:59)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractChildrenModifierAttrProcessor.processAttribute(AbstractChildrenModifierAttrProcessor.java:58)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractAttrProcessor.doProcess(AbstractAttrProcessor.java:74)
[artifact:mvn]    at org.thymeleaf.processor.AbstractProcessor.process(AbstractProcessor.java:212)
[artifact:mvn]    at org.thymeleaf.dom.Node.applyNextProcessor(Node.java:896)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:858)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.Document.process(Document.java:93)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1261)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1157)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1103)
[artifact:mvn]    at org.thymeleaf.spring3.view.ThymeleafView.renderFragment(ThymeleafView.java:221)
[artifact:mvn]    at org.thymeleaf.spring3.view.ThymeleafView.render(ThymeleafView.java:146)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
[artifact:mvn] [ERROR] 16:59:25 TemplateEngine - [THYMELEAF][40] Exception processing template "catalog/product": Exception evaluating SpringEL expression: "installation" (catalog/product:222)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
[artifact:mvn]    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
[artifact:mvn]    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
[artifact:mvn]    at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
[artifact:mvn]    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:643)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.broadleafcommerce.cms.web.URLHandlerFilter.doFilterInternal(URLHandlerFilter.java:74)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
[artifact:mvn]    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.profile.web.core.security.SessionFixationProtectionFilter.doFilter(SessionFixationProtectionFilter.java:90)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.core.web.order.security.CartStateFilter.doFilter(CartStateFilter.java:105)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.profile.web.core.security.CustomerStateFilter.doFilter(CustomerStateFilter.java:147)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.common.security.handler.CsrfFilter.doFilter(CsrfFilter.java:83)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.broadleafcommerce.common.web.BroadleafRequestFilter.doFilterInternal(BroadleafRequestFilter.java:152)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:448)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
[artifact:mvn]    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
[artifact:mvn]    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.__doHandle(ContextHandler.java:1067)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:377)
[artifact:mvn]    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1001)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
[artifact:mvn]    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
[artifact:mvn]    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
[artifact:mvn]    at org.eclipse.jetty.server.Server.handle(Server.java:360)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:890)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:944)
[artifact:mvn]    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:630)
[artifact:mvn]    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
[artifact:mvn]    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
[artifact:mvn]    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:622)
[artifact:mvn]    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
[artifact:mvn]    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
[artifact:mvn]    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)
[artifact:mvn]    at java.lang.Thread.run(Unknown Source)
[artifact:mvn] Caused by:
[artifact:mvn] org.springframework.expression.spel.SpelEvaluationException: EL1007E:(pos 0): Field or property 'installation' cannot be found on null
[artifact:mvn]    at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:205)
[artifact:mvn]    at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:72)
[artifact:mvn]    at org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:93)
[artifact:mvn]    at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:93)
[artifact:mvn]    at org.thymeleaf.spring3.expression.SpelVariableExpressionEvaluator.evaluate(SpelVariableExpressionEvaluator.java:113)
[artifact:mvn]    at org.thymeleaf.standard.expression.SelectionVariableExpression.executeSelectionVariable(SelectionVariableExpression.java:106)
[artifact:mvn]    at org.thymeleaf.standard.expression.SimpleExpression.executeSimple(SimpleExpression.java:403)
[artifact:mvn]    at org.thymeleaf.standard.expression.Expression.execute(Expression.java:230)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionExecutor.executeExpression(StandardExpressionExecutor.java:62)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionProcessor.executeExpression(StandardExpressionProcessor.java:124)
[artifact:mvn]    at org.thymeleaf.standard.expression.StandardExpressionProcessor.processExpression(StandardExpressionProcessor.java:142)
[artifact:mvn]    at org.thymeleaf.standard.processor.attr.AbstractStandardTextChildModifierAttrProcessor.getText(AbstractStandardTextChildModifierAttrProcessor.java:60)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractTextChildModifierAttrProcessor.getModifiedChildren(AbstractTextChildModifierAttrProcessor.java:59)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractChildrenModifierAttrProcessor.processAttribute(AbstractChildrenModifierAttrProcessor.java:58)
[artifact:mvn]    at org.thymeleaf.processor.attr.AbstractAttrProcessor.doProcess(AbstractAttrProcessor.java:74)
[artifact:mvn]    at org.thymeleaf.processor.AbstractProcessor.process(AbstractProcessor.java:212)
[artifact:mvn]    at org.thymeleaf.dom.Node.applyNextProcessor(Node.java:896)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:858)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:639)
[artifact:mvn]    at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:621)
[artifact:mvn]    at org.thymeleaf.dom.Node.processNode(Node.java:876)
[artifact:mvn]    at org.thymeleaf.dom.Document.process(Document.java:93)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1261)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1157)
[artifact:mvn]    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1103)
[artifact:mvn]    at org.thymeleaf.spring3.view.ThymeleafView.renderFragment(ThymeleafView.java:221)
[artifact:mvn]    at org.thymeleaf.spring3.view.ThymeleafView.render(ThymeleafView.java:146)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
[artifact:mvn]    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
[artifact:mvn]    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
[artifact:mvn]    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
[artifact:mvn]    at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
[artifact:mvn]    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:643)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.broadleafcommerce.cms.web.URLHandlerFilter.doFilterInternal(URLHandlerFilter.java:74)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
[artifact:mvn]    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.profile.web.core.security.SessionFixationProtectionFilter.doFilter(SessionFixationProtectionFilter.java:90)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.core.web.order.security.CartStateFilter.doFilter(CartStateFilter.java:105)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.profile.web.core.security.CustomerStateFilter.doFilter(CustomerStateFilter.java:147)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.broadleafcommerce.common.security.handler.CsrfFilter.doFilter(CsrfFilter.java:83)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[artifact:mvn]    at org.broadleafcommerce.common.web.BroadleafRequestFilter.doFilterInternal(BroadleafRequestFilter.java:152)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147)
[artifact:mvn]    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[artifact:mvn]    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[artifact:mvn]    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1302)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:448)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
[artifact:mvn]    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
[artifact:mvn]    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.__doHandle(ContextHandler.java:1067)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java)
[artifact:mvn]    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:377)
[artifact:mvn]    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1001)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
[artifact:mvn]    at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
[artifact:mvn]    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
[artifact:mvn]    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
[artifact:mvn]    at org.eclipse.jetty.server.Server.handle(Server.java:360)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:890)
[artifact:mvn]    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:944)
[artifact:mvn]    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:630)
[artifact:mvn]    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
[artifact:mvn]    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
[artifact:mvn]    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:622)
[artifact:mvn]    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
[artifact:mvn]    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
[artifact:mvn]    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)


Can you please guide me where I am going wrong.
Thanks and Regards:
Ankit Aggarwal

Re: Add new field to Details tab of Product

Posted: Wed Aug 07, 2013 9:48 am
by elbertbautista
Looks like you are getting a Thymeleaf Error.
Please familiarize yourself with the Thymeleaf EL:
http://www.thymeleaf.org/doc/html/Using-Thymeleaf.html

Code: Select all

org.springframework.expression.spel.SpelEvaluationException: EL1007E:(pos 0): Field or property 'installation' cannot be found on null


If you are using the default BroadleafProductController, it has no reference to "${MyproductImpl}". This controller only adds the object "${product}" to the model. This is why it is null.

If you extended ProductImpl properly as suggested above, you should just be able to say:

Code: Select all

<div th:object="${product}">
   <div id="installation_container" th:utext="*{installation}"></div>
</div>

Re: Add new field to Details tab of Product

Posted: Wed Aug 07, 2013 10:03 am
by Anky
Thanks elbertbautista! ;) :)