, ben isteğe bağlı bir bağımlılık bu şekilde beyan:Blueprint: İsteğe bağlı bağımlılığın sağlanıp sağlanmadığını nasıl kontrol edebilirim? <code>blueprint.xml</code> yılında
<reference id="RepositoryListener"
interface="ru.focusmedia.odp.server.datastore.api.RepositoryListener"
availability="optional" />
<bean id="Repository"
class="ru.focusmedia.odp.server.datastore.jpa.repository.RepositoryImpl">
<jpa:context property="entityManager" unitname="ODP_Server" />
<tx:transaction method="*" value="Required" />
<property name="repositoryListener" ref="RepositoryListener" />
</bean>
ve RepositoryImpl
göre ben RepositoryListener
hizmet mevcut olduğunda bile beklendiği gibi bu yöntem, Blueprint tarafından çağrılan
public void setRepositoryListener(RepositoryListener repositoryListener) {
logger.info("Repository listener set");
this.repositoryListener = repositoryListener;
}
var . Sorun şu ki, 'un hizmetin olup olmadığını nasıl kontrol edebilirim? repositoryListener
null
değil, ama bir Blueprint vekil beri
if (repositoryListener != null) {
repositoryListener.notifyDelete(node);
} else {
logger.warn("No repository listener set!");
}
, çalışmıyor.
Sınırlı bilgi, ancak 'Repository' fasulye bağlanabilir muhtemelen için belirtilen edilebilir denilen bir şey vardır. –