summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--java/src/IceInternal/ReferenceFactory.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/java/src/IceInternal/ReferenceFactory.java b/java/src/IceInternal/ReferenceFactory.java
index 8cd07cfa7c7..374d3549d25 100644
--- a/java/src/IceInternal/ReferenceFactory.java
+++ b/java/src/IceInternal/ReferenceFactory.java
@@ -546,12 +546,24 @@ public final class ReferenceFactory
if(properties.getProperty(property).length() != 0)
{
ref = ref.changeLocator(Ice.LocatorPrxHelper.uncheckedCast(_communicator.propertyToProxy(property)));
+ if(ref.getType() == Reference::TypeDirect)
+ {
+ String s = "`" + property + "=" + properties.getProperty(property) +
+ "': cannot set a locator on a direct reference; setting ignored";
+ _instance.initializationData().logger.warning(s);
+ }
}
property = propertyPrefix + ".LocatorCacheTimeout";
if(properties.getProperty(property).length() != 0)
{
ref = ref.changeLocatorCacheTimeout(properties.getPropertyAsInt(property));
+ if(ref.getType() == Reference::TypeDirect)
+ {
+ String s = "`" + property + "=" + properties.getProperty(property) +
+ "': cannot set a locator cache timeout on a direct reference; setting ignored";
+ _instance.initializationData().logger.warning(s);
+ }
}
property = propertyPrefix + ".Router";