Project

General

Profile

« Previous | Next » 

Revision 47826

integrated latest changes from dnet40

View differences:

modules/cnr-resultset-client/trunk/src/main/java/eu/dnetlib/enabling/resultset/client/ResultSetClientFactory.java
1 1
package eu.dnetlib.enabling.resultset.client;
2 2

  
3
import java.util.Map;
4
import javax.xml.ws.BindingProvider;
3 5
import javax.xml.ws.wsaddressing.W3CEndpointReference;
4 6

  
5 7
import eu.dnetlib.enabling.resultset.client.utils.EPRUtils;
......
16 18
import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
17 19
import org.springframework.beans.factory.annotation.Required;
18 20

  
19

  
20 21
/**
21 22
 * 
22 23
 * @author claudio
......
126 127
	private ResultSetService getResultSetService(final W3CEndpointReference epr, final long connectTimeout, final long requestTimeout) {
127 128
		final ResultSetService service = serviceResolver.getService(ResultSetService.class, epr);
128 129

  
129
		if (log.isDebugEnabled()) {
130
			log.debug(String.format("creting resultSet service stub with connectTimeout(%s), requestTimeout(%s)", connectTimeout, requestTimeout));
131
		}
130
		log.debug(String.format("creting resultSet service stub (%s) with connectTimeout(%s), requestTimeout(%s)", service.getClass().getName(), connectTimeout, requestTimeout));
132 131

  
133 132
		if(service instanceof Client) {
133
			log.debug(String.format("setting timeouts for %s", Client.class));
134 134
			final Client client = ClientProxy.getClient(service);
135 135
			final HTTPConduit http = (HTTPConduit) client.getConduit();
136 136
			final HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
......
140 140
			httpClientPolicy.setReceiveTimeout(requestTimeout);
141 141

  
142 142
			http.setClient(httpClientPolicy);
143
		} else if (service instanceof BindingProvider) {
144
			log.debug(String.format("setting timeouts for %s", BindingProvider.class));
145
			final Map<String, Object> requestContext = ((BindingProvider) service).getRequestContext();
146

  
147
			// can't be sure about which will be used. Set them all.
148
			requestContext.put("com.sun.xml.internal.ws.request.timeout", requestTimeout);
149
			requestContext.put("com.sun.xml.internal.ws.connect.timeout", connectTimeout);
150

  
151
			requestContext.put("com.sun.xml.ws.request.timeout", requestTimeout);
152
			requestContext.put("com.sun.xml.ws.connect.timeout", connectTimeout);
153

  
154
			requestContext.put("javax.xml.ws.client.receiveTimeout", requestTimeout);
155
			requestContext.put("javax.xml.ws.client.connectionTimeout", connectTimeout);
143 156
		}
144 157

  
145 158
		return service;
modules/cnr-resultset-client/trunk/pom.xml
9 9
	<groupId>eu.dnetlib</groupId>
10 10
	<artifactId>cnr-resultset-client</artifactId>
11 11
	<packaging>jar</packaging>
12
	<version>2.1.2-SNAPSHOT</version>
12
	<version>2.1.6-SNAPSHOT</version>
13 13
	<scm>
14 14
		<developerConnection>scm:svn:https://svn.driver.research-infrastructures.eu/driver/dnet45/modules/cnr-resultset-client/trunk</developerConnection>
15 15
	</scm>

Also available in: Unified diff