title: Not fetch a LAZY relation if I call from a method which calls after another Transactional method
body: <p>In my Spring Boot 2.2.5.RELEASE application I have a problem when I try to fetch a LAZY field.</p>
  
  <p>The problem occurs in a service method, <code>createWayBillFromInvoice</code>, which marked as <code>@Transactional</code>. </p>
  
  <p><strong>Case A:</strong> I call this method from a controller directly it executes with no problem.</p>
  
  <p><strong>Case B:</strong> I call the same method from another service method which is not itself Transactional 
  my LAZY fields not fetch.</p>
  
  <p>So I assume it is about Transaction management but I could not find the reason.</p>
  
  <p>The method where my LAZY fields not fetched (and fetched in a direct-call):</p>
  
  <pre><code>@Transactional
  public createWayBillFromInvoice(){
      Invoice invoice = invoiceRepository.getInvoice(invoiceId);//invoice is selected
      Order order = invoice.getOrder();
  }
  </code></pre>
  
  <p>Here my <code>order</code> relation is not null but not initialized and not proxied, so If I call <code>order.getOtherRelations</code> it returns empty.</p>
  
  <p>In case B I call something like:</p>
  
  <pre><code>public void create(){ //This method IS NOT Transactional
     invoiceService.createInvoice();//This method is Transactional
     waybillService.createWaybilFromInvoice();//The method declared above
  }
  </code></pre>
  
  <p>I tried:</p>
  
  <ul>
  <li>Make the <code>create</code> method <code>Transactional</code></li>
  <li>Set propagation to <code>REQUIRES_NEW</code> for <code>createWaybillFromInvoice</code></li>
  </ul>
  
  <p>Here are some logs:</p>
  
  <pre><code>2020-06-04 17:17:16.337 DEBUG 1208 --- [nio-9002-exec-4] o.s.orm.jpa.JpaTransactionManager        : Creating new transaction with name [io.salesart.billingservice.service.impl.WaybillServiceImpl.createWayBillFromInvoice]: 
  2020-06-04 17:17:16.376 DEBUG 1208 --- [nio-9002-exec-4] o.s.jdbc.datasource.DataSourceUtils      : Changing isolation level of JDBC Connection [HikariProxyConnection@2044564149 wrapping org.postgresql.jdbc.PgConnection@27db45f] to 2
  2020-06-04 17:17:16.450 DEBUG 1208 --- [nio-9002-exec-4] o.h.e.t.internal.TransactionImpl         : On TransactionImpl creation, JpaCompliance#isJpaTransactionComplianceEnabled == false
  2020-06-04 17:17:16.451 DEBUG 1208 --- [nio-9002-exec-4] o.h.e.t.internal.TransactionImpl         : begin
  2020-06-04 17:17:16.451 DEBUG 1208 --- [nio-9002-exec-4] org.postgresql.jdbc.PgConnection         :   setAutoCommit = false
  2020-06-04 17:17:16.457 DEBUG 1208 --- [nio-9002-exec-4] o.s.orm.jpa.JpaTransactionManager        : Exposing JPA transaction as JDBC [org.springframework.orm.jpa.vendor.HibernateJpaDialect$HibernateConnectionHandle@caf1ee0]
  2020-06-04 17:17:19.532 DEBUG 1208 --- [nio-9002-exec-4] o.s.orm.jpa.JpaTransactionManager        : Found thread-bound EntityManager [SessionImpl(1021250378&lt;open&gt;)] for JPA transaction
  </code></pre>