Author: tolusha
Date: 2010-05-26 05:00:09 -0400 (Wed, 26 May 2010)
New Revision: 2434
Modified:
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/naming/InitialContextBinder.java
Log:
EXOJCR-743: InitialContextBinder bind twice same datasource in some case
Modified:
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/naming/InitialContextBinder.java
===================================================================
---
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/naming/InitialContextBinder.java 2010-05-26
08:54:41 UTC (rev 2433)
+++
kernel/trunk/exo.kernel.component.common/src/main/java/org/exoplatform/services/naming/InitialContextBinder.java 2010-05-26
09:00:09 UTC (rev 2434)
@@ -31,6 +31,7 @@
import java.util.Map.Entry;
+import javax.naming.NameAlreadyBoundException;
import javax.naming.NamingException;
import javax.naming.Reference;
import javax.naming.StringRefAddr;
@@ -153,7 +154,14 @@
private void bind(String bindName, Reference reference) throws NamingException
{
- initialContextInitializer.getInitialContext().bind(bindName, reference);
+ try
+ {
+ initialContextInitializer.getInitialContext().bind(bindName, reference);
+ }
+ catch (NameAlreadyBoundException e)
+ {
+ initialContextInitializer.getInitialContext().rebind(bindName, reference);
+ }
bindings.put(bindName, reference);
}
Show replies by date