RDAVIDWebService - Unable to sendViaPost to url etc etc - server time out
5
1
Entering edit mode
TriS ▴ 200
@tris-5635
Last seen 24 months ago
United States

hi all

I am using the RDAVIDWebService to retrieve GO annotation for several gene lists. I was able to run it properly a few day ago but since yesterday I get the following error:

[INFO] Unable to sendViaPost to url[http://david.abcc.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/]
at java.io.BufferedInputStream.fill(Unknown Source)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1413) at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973) at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:560) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:199) at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:76) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:400) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:225) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:435) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402) at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229) at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165) at sample.session.client.stub.DAVIDWebServiceStub.getListReport(DAVIDWebServiceStub.java:3011) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at RJavaTools.invokeMethod(RJavaTools.java:386) here the code I use: library(RDAVIDWebService) david<-DAVIDWebService$new(email="myEmail@somewhere.org")
connect(david)
## read file containing group #, gene name, entrez ID etc..

# create a vector with the group #s
t <- c(0,1,2,3,4,5,7,8,10,11,12)

> all_ids[1:10,c(1,2,4)]    ## col 1 is the group, 2 is the gene name and 4 the entrez gene ID
1        2    4
40   0     AATK  9625
72   0    ABCC1  4363
158  0    ACACA    31
298  0    ACTN2    88
305  0    ACTR2 10097
546  0     AFF3  3899
765  0  ALDH3A2   224
904  0    AMYP1   281
1199 0 APOBEC3C 27350

## here I loop through the groups and per each group get and save the GO annotation in the dis_cluster_x.txt file/variable, extract those with FDR < 0.05 then reset the david object at the end of each loop so that it's ready for the new list of gene IDs

for (i in 1:length(t)){

names_d <- all_ids[which(all_ids[,1] == t[i]),4]
setAnnotationCategories(david, c("GOTERM_BP_ALL","GOTERM_MF_ALL"))
filename <- paste("dis_cluster_",i,".txt",sep="")
getFunctionalAnnotationChartFile(david, fileName = filename,threshold = 0.0001)
temp <- temp[which(temp$FDR < 0.05),] assign(paste("dis_cluster_",i,sep=""),temp) david<-DAVIDWebService$new(email="myEmail@somewhere.org")
}

the code worked great in the past, however, when it gets to the addList() function it throws the error above...I'm not sure what's happening...

any help would be golden, thanks!!

software error david rdavidwebservice • 8.9k views
1
Entering edit mode
TriS ▴ 200
@tris-5635
Last seen 24 months ago
United States

ok I found the answer to the problem. in case anyone is wondering, you cannot submit jobs with more than 3000 genes. one of my gene clusters had 6k, therefore the server wasn't able to handle it. a description is here

1
Entering edit mode
cfresno ▴ 10
@cfresno-7571
Last seen 7.3 years ago
Argentina

Not necessarily the mentioned error is cause for large gene list. Indeed, two possible causes: 1) busy server or 2) incorrect protocol.

1) Read timed out error is most probable because DAVID server has a lot of queries and can not give you answers during the typical 30000 mili seconds window. From version 1.2.0 onwards you can see the troubleshot section of the package  www.bioconductor.org/packages/release/bioc/vignettes/RDAVIDWebService/inst/doc/RDavidWS-vignette.pdf and try the following:

library("RDAVIDWebService")

david <- DAVIDWebService$new() getTimeOut(david) # [1] 30000 ##Increment the time out interval setTimeOut(david, 50000) getTimeOut(david) # [1] 50000 2) if unable to send it via HTTP POST you could (for RDAVIDWebService version greater than 1.1.2-3) ##Check HTTP_PROTOCOL_VERSION getHttpProtocolVersion(david) ##Set the appropiate HTTP_PROTOCOL_VERSION setHttpProtocolVersion(david, "HTTP/1.0") Hope them works for you. ADD COMMENT 0 Entering edit mode termanini ▴ 10 @termanini-8493 Last seen 6.0 years ago Hi, my script worked fine until a week ago. Now I am getting the same error both on my Mac and on the Unix cluster of the Campus. My code was: david = DAVIDWebService$new(email="xxx@yyy.com");
setAnnotationCategories(david, c("GOTERM_BP_FAT", "KEGG_PATHWAY", "PANTHER_PATHWAY"));
getFunctionalAnnotationChartFile(david, fileName="result.xls");

As suggested, I changed the code with:

david = DAVIDWebService$new(); setTimeOut(david, 50000); setHttpProtocolVersion(david, "HTTP/1.0"); setEmail(david, "xxx@yyy.com"); show(david); However, I get the error below. Can you help me? Thanks very much Best, Alberto --- DAVIDWebService object to access DAVID's website. User email: [xxxxxxxxxxxx] Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : org.apache.axis2.AxisFault: Transport error: 301 Error: Moved Permanently [INFO] Unable to sendViaPost to url[http://david.abcc.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/] org.apache.axis2.AxisFault: Transport error: 301 Error: Moved Permanently at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:310) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:200) at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:76) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:400) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:225) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:435) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402) at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229) at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165) at sample.session.client.stub.DAVIDWebServiceStub.getAllListNames(DAVIDWebServiceStub.java:2533) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at RJavaTools.invokeMethod(RJavaTools.java:386) ADD COMMENT 0 Entering edit mode termanini ▴ 10 @termanini-8493 Last seen 6.0 years ago Hi to all, I just have an answer from the DAVID team. They changed from http to https. How we can fix that in the R package? Best, Alberto --- Hi Alberto, DAVID migrated to a new home recently and a new policy has dictated that our frontend proxy only serve secure contents (https). Xiaoli Jiao, PhD Scientist, DAVID team ADD COMMENT 0 Entering edit mode sorry it is not an answer, may I ask how do you get registered email? because after I register in https://david.ncifcrf.gov/content.jsp?file=WS.html , I got no email notification to tell whether the registration is successful or not. and failed to run the Package. ADD REPLY 0 Entering edit mode The registration is successful, you will not get notifications. The package is not working because of the change of the protocol from http to https by DAVID team, and the problem is not yet fixed. ADD REPLY 0 Entering edit mode Hello everyone, Does someone have a solution to the https problem? Thanks Virginie ADD REPLY 0 Entering edit mode oops324 • 0 @oops324-8615 Last seen 7.0 years ago Singapore I use DAVID-WS, maybe also need to change the http my$soap = SOAP::Lite
-> uri('http://service.session.sample')
-> proxy('http://david.abcc.ncifcrf.gov/webservice/services/DAVIDWebService',

I checked the second link http://david.abcc.ncifcrf.gov/webservice/services/DAVIDWebService'  is wrong, can not open