Author: mputz
Date: 2010-04-16 07:11:09 -0400 (Fri, 16 Apr 2010)
New Revision: 13909
Modified:
branches/Enterprise_Portal_Platform_4_3_GA_CP02_JBEPP-297/wsrp/src/main/org/jboss/portal/wsrp/deployment/WSRPDeploymentFactory.java
Log:
JBEPP-297: Force WS timeout from XML to bypass the fact that the value cannot be persisted
in DB.
Modified:
branches/Enterprise_Portal_Platform_4_3_GA_CP02_JBEPP-297/wsrp/src/main/org/jboss/portal/wsrp/deployment/WSRPDeploymentFactory.java
===================================================================
---
branches/Enterprise_Portal_Platform_4_3_GA_CP02_JBEPP-297/wsrp/src/main/org/jboss/portal/wsrp/deployment/WSRPDeploymentFactory.java 2010-04-16
10:52:06 UTC (rev 13908)
+++
branches/Enterprise_Portal_Platform_4_3_GA_CP02_JBEPP-297/wsrp/src/main/org/jboss/portal/wsrp/deployment/WSRPDeploymentFactory.java 2010-04-16
11:11:09 UTC (rev 13909)
@@ -151,6 +151,10 @@
log.info(message + " (loaded from database).");
+ // Set the WS timeout value from XML as it is not persisted in DB
+ // (see
http://jira.jboss.org/jira/browse/JBEPP-291)
+ setWSTimeout(attrs, consumer);
+
// consumer already exists, do not further process this producer and use the
DB configuration instead
return null;
}
@@ -169,23 +173,9 @@
}
}
- String wsTimeout = attrs.getValue("ws-timeout");
- Integer wsTimeoutMS = ServiceFactory.DEFAULT_TIMEOUT_MS;
- if (wsTimeout != null)
- {
- try
- {
- wsTimeoutMS = new Integer(wsTimeout);
- }
- catch (NumberFormatException e)
- {
- log.info("Ignoring bad WS timeout value " + wsTimeout + "
for producer '" + id + "'");
- }
- }
-
// consumer didn't exist in the database, so create one and configure it
consumer = consumerRegistry.createConsumer(id, expirationCacheSeconds);
-
consumer.getProducerInfo().getEndpointConfigurationInfo().setWSOperationTimeOut(wsTimeoutMS);
+ setWSTimeout(attrs, consumer);
return consumer;
}
@@ -195,6 +185,24 @@
}
}
+ private void setWSTimeout(Attributes attrs, WSRPConsumer consumer)
+ {
+ String wsTimeout = attrs.getValue("ws-timeout");
+ Integer wsTimeoutMS = ServiceFactory.DEFAULT_TIMEOUT_MS;
+ if (wsTimeout != null)
+ {
+ try
+ {
+ wsTimeoutMS = new Integer(wsTimeout);
+ }
+ catch (NumberFormatException e)
+ {
+ log.info("Ignoring bad WS timeout value " + wsTimeout + " for
producer '" + consumer.getProducerId() + "'");
+ }
+ }
+
consumer.getProducerInfo().getEndpointConfigurationInfo().setWSOperationTimeOut(wsTimeoutMS);
+ }
+
public Object newChild(WSRPConsumer consumer, UnmarshallingContext nav, String nsURI,
String localName,
Attributes attrs)
{