title: Index name for class java.lang.String name rel: false idx: true must differ from the default name (SDN 3.0)
body: <p>After upgrading from SDN 2.3.4 to 3.0.0.RELEASE, I have two tests that fail with :</p>
  
  <pre><code>Index name for class java.lang.String name rel: false idx: true must differ from the default name: BesoinNode
  </code></pre>
  
  <p>In the <code>BesoinNode</code> class, I previously used <code>@Indexed(indexName = "indexOfNeeds")</code> but removed the <code>indexName</code> because of <a href="https://stackoverflow.com/a/22084251/1528942">https://stackoverflow.com/a/22084251/1528942</a>. Now my index declaration is simply :</p>
  
  <pre class="lang-java prettyprint-override"><code>@Indexed
  private String name;
  </code></pre>
  
  <p>The failing test code is :</p>
  
  <pre class="lang-java prettyprint-override"><code>@Test
  public final void t02_TestBesoinDAORetrieve() {
      // We create a new object in the datastore
      Besoin need1 = needDAO.create(new BesoinNode("t02 need"));
      assertEquals(new Long(1), needDAO.count());
  
      // We retrieve the object from the datastore using its id
      Besoin need1bis = needDAO.retrieveById(need1.getId());
      assertEquals(need1, need1bis);
      assertEquals(need1.getId(), need1bis.getId());
      assertEquals(need1.getName(), need1bis.getName());
  
      // We retrieve the object from the datastore using its name
      Besoin need1ter = needDAO.retrieveByName(need1.getName());
      assertEquals(need1, need1ter);
      assertEquals(need1.getId(), need1ter.getId());
      assertEquals(need1.getName(), need1ter.getName());
  }
  </code></pre>
  
  <p>The test succeeds if I comment out the call to <code>retrieveByName</code>. Code is below:</p>
  
  <pre class="lang-java prettyprint-override"><code>@Override
  public Besoin retrieveByName(String name) {
      return repository.findByPropertyValue("name", name);
  }
  </code></pre>
  
  <p>How can I rewrite my <code>retrieveByName</code> method to solve the error? Thanks!</p>
  
  <p><strong><em>Note</em></strong> : while this may no be related to the problem, I see in the <a href="http://docs.spring.io/spring-data/data-neo4j/docs/3.0.0.RELEASE/api/index.html?index-all.html" rel="nofollow noreferrer">API</a> that <code>IndexRepository#findByPropertyValue(String, Object)</code> is deprecated. Only <code>AbstractGraphRepository#findByPropertyValue(String, Object)</code> is <strong>not</strong> deprecated. The problem is that my repository extends <code>GraphRepository</code> and that <code>GraphRepository</code> extends <code>IndexRepository</code>, something I have no control over.</p>
  
  <p><strong><em>Note 2</em></strong> : Using <code>@Indexed(indexType = IndexType.SIMPLE)</code> makes the test succeed. But this toggles the old index system (not the new one which is label-based).</p>