// only POJO endpoints have to be initialized. EJB3 endpoints are handled by the EJB3 subsystem.
final ServiceName endpointComponentName = getEndpointComponentServiceName();
final ServiceController<BasicComponent> endpointController = getComponentController(endpointComponentName);
if (endpointController != null) {
final BasicComponent endpointComponent = endpointController.getValue();
final ComponentInstance endpointComponentInstance = endpointComponent.createInstance(delegate.getInstance(className).getValue());
final Object endpointInstance = endpointComponentInstance.getInstance();
// mark reference as initialized because JBoss server initialized it
final Reference endpointReference = ReferenceFactory.newInitializedReference(endpointInstance);
return cacheAndGet(endpointReference);
}