title: spring jndi with propertyPlaceholder
body: <p>When I have used jndi-place-holder name as ${myappdb.jndi} having following error.
  When I used the direct JNDI name instead of using placeholder name it worked properly.
  Why Spring jndi does not read JNDI name from placeholder? I am sure "myappdb.jndi" is defined in "myapp.cfg" file.</p>
  
  <p>Using: </p>
  
  <p>Weblogic 12c</p>
  
  <p>Spring 3.x</p>
  
  <p><strong>ApplicationContext.xml</strong></p>
  
  <pre><code>&lt;bean
      class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"&gt;
      &lt;property name="ignoreUnresolvablePlaceholders" value="true"/&gt;
      &lt;property name="ignoreResourceNotFound" value="false"/&gt;
      &lt;property name="order" value="1" /&gt;
      &lt;property name="locations"&gt;
          &lt;list&gt;
              &lt;value&gt;file:/conf/myapp.cfg&lt;/value&gt;
          &lt;/list&gt;
      &lt;/property&gt;
  &lt;/bean&gt;
  
  &lt;jee:jndi-lookup id="myapp.db" jndi-name="${myappdb.jndi}"/&gt;
  
  &lt;bean name="myappDbDaoImpl" class="com.myapp.db.myappDbDaoImpl"&gt;
      &lt;property name="dataSource" ref="myapp.db" /&gt;
  &lt;/bean&gt;
  </code></pre>
  
  <p><strong>Error:</strong></p>
  
  <pre><code>    weblogic.application.ModuleException: javax.naming.NameNotFoundException: While trying to lookup '${myappdb.jndi}' didn't find subcontext '${myappdb'. Resolved ''; remaining name '${
  myappdb/jndi}'
          at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
          at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
          at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:216)
          at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:211)
          at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42)
  </code></pre>