title: JPA entity with bill of material concept showing error when eclipse IDE changed from juno to helios
body: <p>I am facing a unique issue while implementing the bill of material concept .<br>
  <strong>Jar used</strong>: eclipselink 2.4.0 , javax.persistence</p>
  
  <p>The entity is as follows:</p>
  
  <pre class="lang-java prettyprint-override"><code>            @Id
              @TableGenerator(name = "Config_Key_Incrementor", table = "id_generator", pkColumnName = "gen_name", valueColumnName = "gen_value", pkColumnValue = "conifg_id_gen", allocationSize = 1, initialValue = 1)
              @GeneratedValue(strategy = TABLE, generator = "Config_Key_Incrementor")
              @Column(name = "config_id")
              private int configId;
  
              @Column(name = "config_name")
              private String configName;
  
              //bi-directional many-to-one association to Bill_Of_Material
              @ManyToOne
              @PrimaryKeyJoinColumn(name="config_id")
              private Configuration parent;
  
              //bi-directional many-to-one association to Bill_Of_Material
              @OneToMany(mappedBy="parent")
              private List&lt;Configuration&gt; children = new ArrayList&lt;Configuration&gt;();
  
              public Configuration getParent() {
                  return parent;
              }
  
              public void setParent(Configuration parent) {
                  this.parent = parent;
              }
  
              public List&lt;Configuration&gt; getChildren() {
                  return children;
              }
  
              public void setChildren(List&lt;Configuration&gt; children) {
                  this.children = children;
              }
  
              public int getConfigId() {
                  return configId;
              }
  
              public void setConfigId(int configId) {
                  this.configId = configId;
              }
  
              public String getConfigName() {
                  return configName;
              }
  
              public void setConfigName(String configName) {
                  this.configName = configName;
              }
  </code></pre>
  
  <p>The above code works fine when the IDE environment is eclipse juno.</p>
  
  <p><strong>Output</strong> (IDE is eclipse juno)-</p>
  
  <pre><code>CREATE TABLE configuration
  (
  config_id integer NOT NULL,
  config_name character varying(255),
  parent_config_id integer,
  CONSTRAINT configuration_pkey PRIMARY KEY (config_id ),
  CONSTRAINT fk_configuration_parent_config_id FOREIGN KEY (parent_config_id)
      REFERENCES configuration (config_id) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
  )
  </code></pre>
  
  <p>But when the same code is not giving error when the IDE is eclipse helios. </p>
  
  <p><strong>Output</strong> here(IDE is eclipse helios) is:  </p>
  
  <pre><code>CREATE TABLE configuration    
  (    
  config_id integer NOT NULL,  
  config_name character varying(255),    
  CONSTRAINT configuration_pkey PRIMARY KEY (config_id ),  
  CONSTRAINT fk_configuration_config_id FOREIGN KEY (config_id)  
         REFERENCES configuration (config_id) MATCH SIMPLE  
         ON UPDATE NO ACTION ON DELETE NO ACTION  
  )    
  </code></pre>
  
  <p>The above code works with a small modification(as suggested in on of the posts- <a href="https://stackoverflow.com/questions/17923021/jpa-entity-giving-error-on-implementing-bill-of-material-concept">JPA entity giving error on implementing Bill of material concept</a>)</p>
  
  <pre><code>@ManyToOne
  @JoinColumn(name="parent_config_id", referencedColumnName="config_id")
  private Configuration parent;
  </code></pre>
  
  <p><strong>Problem:</strong> I am not able to figure out why this behaviour is shown with just IDE version change</p>