docs: public HomeHandle getHomeHandle()
      {
          final boolean isTraceOn = TraceComponent.isAnyTracingEnabled(); // d532639.2
  
          if (isTraceOn && tc.isEntryEnabled())
              Tr.entry(tc, "getHomeHandle");
  
          // p116276 - add code to push/pop java namespace onto ThreadContext.
          ComponentMetaDataAccessorImpl cmdAccessor = null; // p125735
          try {
              cmdAccessor = ComponentMetaDataAccessorImpl.getComponentMetaDataAccessor(); // p125735
              cmdAccessor.beginContext(beanMetaData); // p125735
              HomeHandle ehh = null; //p116577 //p125891
  
              //EntityHomeHandle is really a misnomer; is serves for all types
              //of homes
  
              // p116577 - start of change.
              // We need to make EntityHomeHandle class use only
              // SUN JDK or Java EE interfaces.  So, we need to pass EJBHome
              // stub to the EntityHomeHandle constructor. Unlike EJBHome
              // interface, the EJBLocalHome does not have a getHomeHandle
              // method.  So, it is safe to assume we need a stub.
              try
              {
                  if (cvUsePortableClass) //p125891
                  {
                      if (isTraceOn && tc.isDebugEnabled())
                          Tr.debug(tc, "getHomeHandle():Creating portable HomeHandleImpl"); //p125891
  
                      EJSWrapper wrapper = getWrapper().getRemoteWrapper();
                      Object wrapperRef = container.getEJBRuntime().getRemoteReference(wrapper);
                      EJBHome home = (EJBHome) PortableRemoteObject.narrow(wrapperRef, EJBHome.class);
                      ehh = new HomeHandleImpl(home);
                  }
                  else
                  {
                      if (isTraceOn && tc.isDebugEnabled())
                          Tr.debug(tc, "getHomeHandle():Creating non-portable EntityHomeHandle"); //p125891
                      Properties pFake = null;
                      ehh = new EntityHomeHandle(ivHomeId,
                                      beanMetaData.homeInterfaceClass.getName(),
                                      beanMetaData,
                                      pFake); // p125891 d145368
                  }
              } catch (Exception e)
              {
                  FFDCFilter.processException(e, CLASS_NAME + ".getHomeHandle",
                                              "2362", this);
                  EJBException ex = new EJBException("get of EJBHome failed", e);
                  Tr.error(tc,
                           "CAUGHT_EXCEPTION_THROWING_NEW_EXCEPTION_CNTR0035E",
                           new Object[] { e, ex.toString() }); // d194031
                  throw ex;
              } catch (Throwable t)
              {
                  FFDCFilter.processException(t, CLASS_NAME + ".getHomeHandle",
                                              "2372", this);
                  ContainerEJBException ex;
                  ex = new ContainerEJBException("get of EJBHome failed", t);
                  Tr.error(tc,
                           "CAUGHT_EXCEPTION_THROWING_NEW_EXCEPTION_CNTR0035E",
                           new Object[] { t, ex.toString() }); // d194031
                  throw ex;
              }
              // p116577 - end of change.
  
              if (isTraceOn && tc.isEntryEnabled())
                  Tr.exit(tc, "getHomeHandle", ehh);
              return ehh;
          } finally
          {
              if (cmdAccessor != null)
                  cmdAccessor.endContext(); // p125735
          }
      }