RDAVIDWebService Error 301: Moved Permanently
17
3
Entering edit mode
Vivek.b ▴ 100
@vivekb-7661
Last seen 4.5 years ago
Germany

Hi everyone

I have been receiving this error while trying to connect to RDAVIDWebService.

david <- DAVIDWebService$new(email="myemail@inst.org")

[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.authenticate(DAVIDWebServiceStub.java:2288)

Error in .jcall(stub, "S", "authenticate", email) :
  org.apache.axis2.AxisFault: Transport error: 301 Error: Moved Permanently

 

I am getting same error while trying to use the Java Client from DAVID, so I think it's a DAVID error (probably they moved to a new URL which needs to be updated in the packages).

java -Djava.ext.dirs=lib  sample.session.client.ChartReportClient

[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.authenticate(DAVIDWebServiceStub.java:2288)
    at sample.session.client.ChartReportClient.invokeService(ChartReportClient.java:21)
    at sample.session.client.ChartReportClient.main(ChartReportClient.java:100)

 

What would be a solution to that?

 

Thanks

Vivek

 

rdavidwebservice david • 17k views
ADD COMMENT
0
Entering edit mode

Also getting this error on a fresh install of the package, does anyone have a workaround (could not find a relevant setting to change to update this parameter)?

ADD REPLY
1
Entering edit mode

I don't know of one. The package maintainer needs to change the package to use the new (https) URL. However, I think there are also issues on the server side as the SSL certificate appears to be misconfigured, and the site appears to go down frequently (or at least DNS at my location cannot resolve its name). So both of those issues will have to be fixed before the package can work. I will ping the maintainer of the package so that at least he can get started on the first problem.

ADD REPLY
0
Entering edit mode

Apparently you can specify the url as an argument to new(), but this doesn't get very far (except in the length of Java error generated)

> DAVIDWebService$new(email="...", url="https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/")
[INFO] Unable to sendViaPost to url[https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/]
org.apache.axis2.AxisFault: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
    at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
    at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:83)
    at org.apache.axis2.transport.http.AxisRequestEntity.writeRequest(AxisRequestEntity.java:84)
    at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:499)
    at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:2114)
    at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1096)
    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.authenticate(DAVIDWebServiceStub.java:2288)
Caused by: com.ctc.wstx.exc.WstxIOException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
    at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1692)
    at com.ctc.wstx.sw.BaseStreamWriter.close(BaseStreamWriter.java:288)
    at org.apache.axiom.util.stax.wrapper.XMLStreamWriterWrapper.close(XMLStreamWriterWrapper.java:46)
    at org.apache.axiom.om.impl.MTOMXMLStreamWriter.close(MTOMXMLStreamWriter.java:174)
    at org.apache.axiom.om.impl.llom.OMSerializableImpl.serializeAndConsume(OMSerializableImpl.java:197)
    at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
    ... 18 more
Caused by: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
    at sun.security.ssl.SSLSocketImpl.checkEOF(SSLSocketImpl.java:1496)
    at sun.security.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1508)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:70)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at org.apache.commons.httpclient.ChunkedOutputStream.flush(ChunkedOutputStream.java:191)
    at com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:99)
    at com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:214)
    at com.ctc.wstx.sw.BufferingXmlWriter.close(BufferingXmlWriter.java:194)
    at com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1690)
    ... 23 more
Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:953)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1332)
    at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:709)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at org.apache.commons.httpclient.ChunkedOutputStream.flush(ChunkedOutputStream.java:191)
    at com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:99)
    at com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:214)
    at com.ctc.wstx.sw.BaseStreamWriter.flush(BaseStreamWriter.java:311)
    at org.apache.axiom.util.stax.wrapper.XMLStreamWriterWrapper.flush(XMLStreamWriterWrapper.java:50)
    at org.apache.axiom.om.impl.MTOMXMLStreamWriter.flush(MTOMXMLStreamWriter.java:184)
    at org.apache.axis2.databinding.utils.writer.MTOMAwareXMLSerializer.flush(MTOMAwareXMLSerializer.java:79)
    at org.apache.axis2.databinding.ADBDataSource.serialize(ADBDataSource.java:94)
    at org.apache.axiom.om.impl.llom.OMSourcedElementImpl.internalSerialize(OMSourcedElementImpl.java:691)
    at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:965)
    at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:283)
    at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:245)
    at org.apache.axiom.om.impl.llom.OMSerializableImpl.serializeAndConsume(OMSerializableImpl.java:193)
    ... 19 more
Caused by: java.io.EOFException: SSL peer shut down incorrectly
    at sun.security.ssl.InputRecord.read(InputRecord.java:482)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:934)
    ... 37 more
Error in .jcall(stub, "S", "authenticate", email) : 
  org.apache.axis2.AxisFault: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake

There does seem to be something wrong with the site's SSL configuration, e.g.,

/tmp$ wget https://david.ncifcrf.gov/webservice/sample_clients/JavaClient-1.1.zip
--2015-07-30 17:26:06--  https://david.ncifcrf.gov/webservice/sample_clients/JavaClient-1.1.zip
Resolving david.ncifcrf.gov (david.ncifcrf.gov)... 129.43.40.120
Connecting to david.ncifcrf.gov (david.ncifcrf.gov)|129.43.40.120|:443... connected.
ERROR: cannot verify david.ncifcrf.gov's certificate, issued by ‘/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2’:
  Unable to locally verify the issuer's authority.
To connect to david.ncifcrf.gov insecurely, use `--no-check-certificate'.

Xiaoli Jiao from the DAVID team was mentioned in another part of this post so might be someone who can help us.

 

ADD REPLY
0
Entering edit mode

Hi! Any updates on this package?

-Liezel

ADD REPLY
0
Entering edit mode

Hi! Any updates on this package?

-Liezel

ADD REPLY
7
Entering edit mode
@cristobal-fresno-rodriguez-3838
Last seen 8.6 years ago
Argentina/Cordoba/Universidad Católica …

Work around for the new DAVID Web service configuration

 

1) First of all the HTTPS certificate needs Java 8 in order to run. 

Previous versions will not run due to prime size. The maximum size that Java accepts is 1024 bits. This is a known issue (see JDK-6521495). 

 

1.1) Check your java version 

java -version

 

java version "1.8.0_60"

Java(TM) SE Runtime Environment (build 1.8.0_60-b27)

Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

 

If the version is 1.7.XX or earlier then you need to install Java 8. If not, go to step 2.

 

1.2) In windows, download and install jre or jdk 8 from oracle site 

 

1.2) In linux follow the instructions in http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html 

Briefly, you need to add webupd8team repository and install the package:

 

su -

echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list

echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886

apt-get update

apt-get install oracle-java8-installer

exit

 

2) The actual certificate used by DAVID is not signed by a recognized authority in Java brunch. Then, it must be incorporated to "cacerts" files to properly use it.

2.1) In Windows:

Download  cygwin and follow linux instructions. Usually for JRE should be installed in C:\Program Files\Java\jre1.8.0_51\lib\security or C:\Program Files\Java\jdk1.8.0_51\jre\lib\security for JDK. Reboot the computer if necessary.

 

2.2) In Linux:

Get the certificate:

echo -n | openssl s_client -connect david.ncifcrf.gov:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ncifcrf.cert

 

Check if it was properly downloaded:

openssl x509 -in ncifcrf.cert -text

 

Backup the cacerts file. In my case it is located in /etc/ssl/certs/java directory

sudo cp /etc/ssl/certs/java/cacerts cacerts.org

sudo keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias david -file ncifcrf.cert

 

The certificate should be added to the keystore. Now, copy the new cacerts version to the original position

sudo cp cacerts /etc/ssl/certs/java/

 

3) Update Java configuration in R 

R CMD javareconf

 

Java interpreter : /usr/bin/java

Java version     : 1.8.0_60

Java home path   : /usr/lib/jvm/java-8-oracle/jre

Java compiler    : /usr/bin/javac

Java headers gen.: /usr/bin/javah

Java archive tool: /usr/bin/jar

 

4) Finally, use the new DAVID web service URL in RDAVIDWebService

library("RDAVIDWebService")

david<-DAVIDWebService(email="user@email", url="https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/")

david

DAVIDWebService object to access DAVID's website. 

User email:  user@email 

Available Gene List/s: not submitted yet. 

 

Please let me know if the problem is solved.

Best,

Cristobal

0
Entering edit mode

Hi Cristobal,

Thanks so much for providing a possible solution to this issue. I am however stuck at obtaining the certificate.

For the command:

echo -n | openssl s_client -connect david.ncifcrf.gov:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ncifcrf.cert

I get the following error:

66094:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:/SourceCache/OpenSSL098/OpenSSL098-52.40.1/src/ssl/s23_lib.c:185:

Could you please advise on a possible fix?

I'm using a Mac (OSX 10.10.5).

Thanks,

Piali

ADD REPLY
0
Entering edit mode

Greetings,

Thank you for your interest in RDAVIDWebService package. Please follow the instructions below with the update for MAC users.

Please let me know if the problem is solved.

Regards,

Cristóbal Fresno.

Work around for the new DAVID Web service configuration V 2.0

1) First of all the HTTPS certificate needs Java 8 in order to run. 

Previous versions will not run due to prime size. The maximum size that Java accepts is 1024 bits. This is a known issue (see JDK-6521495). 

1.1) Check your java version 

java -version

java version "1.8.0_60"

Java(TM) SE Runtime Environment (build 1.8.0_60-b27)

Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

 

If the version is 1.7.XX or earlier then you need to install Java 8. If not, go to step 2.

 

1.2) In windows, download and install jre or jdk 8 from oracle site 

1.3) In linux follow the instructions in http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html 

Briefly, you need to add webupd8team repository and install the package:

su -

echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list

echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886

apt-get update

apt-get install oracle-java8-installer

exit

 

1.4) In MAC (tested in Yosemite), there are some things to take into account:

  • Download JDK 8 for MAC from oracle.
  • However, there is a reported bug for Java 8 which searches for JRE 6 installed in your system, in order to work (JDK-7131356).  Ironically, you have to install 1.6 from Apple then Oracle Java 1.8 will start working.
  • Check that your working version is the 1.8

java -version

java version "1.8.0_60"

Java(TM) SE Runtime Environment (build 1.8.0_60-b27)

Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

 

2) The actual certificate used by DAVID is not signed by a recognized authority in Java brunch. Then, it must be incorporated to "cacerts" files to properly use it.

 

2.1) In Windows:

Download  cygwin and follow linux instructions. Usually for JRE should be installed in C:\Program Files\Java\jre1.8.0_51\lib\security or C:\Program Files\Java\jdk1.8.0_51\jre\lib\security for JDK. Reboot the computer if necessary.

 

2.2) In Linux:

Get the certificate:

echo -n | openssl s_client -connect david.ncifcrf.gov:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ncifcrf.cert

 

Check if it was properly downloaded:

openssl x509 -in ncifcrf.cert -text

 

Backup the cacerts file. In my case it is located in /etc/ssl/certs/java directory

sudo cp /etc/ssl/certs/java/cacerts .

sudo cp /etc/ssl/certs/java/cacerts cacerts.org

sudo keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias david -file ncifcrf.cert

 

The certificate should be added to the keystore. Now, copy the new cacerts version to the original position

sudo cp cacerts /etc/ssl/certs/java/

 

2.3) In MAC (tested in Yosemite) the certificate will not work for the present stable openssl version 0.9.8.

2.3.1) Check your openssl version

openssl version

OpenSSL 0.9.8

If it is >= 1.0.2.d then go to step 2.3.3)

2.3.2) Update your openssl, i.e., download, compile and install it

Download the official release from OpenSSL >= 1.0.2.d

tar -xzvf openssl-1.0.2d.tar.gz

cd openssl-1.0.2d

#Compile it with 64 bits support

./Configure darwin64-x86_64-cc   
make
make test
sudo make install

 

Now you may need to reflect the change in your system if openssl version keeps pointing to the old version.

cd /usr/bin

mv sudo openssl openssl098
sudo ln -s /usr/local/ssl/bin/openssl openssl

 

2.3.3)  Get DAVID's certificate and install it into cacerts

Get the certificate:

cd

echo -n | openssl s_client -connect david.ncifcrf.gov:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ncifcrf.cert

 

Check if it was properly downloaded:
openssl x509 -in ncifcrf.cert -text

 

Backup the cacerts file. In my case the 1.8.0_60 jdk version is located in /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/security/ directory

sudo find / -name cacerts
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib/security/cacerts
/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/lib/security/cacerts
/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/security/cacerts
/System/Library/Java/Support/CoreDeploy.bundle/Contents/Home/lib/security/cacerts
/System/Library/Java/Support/Deploy.bundle/Contents/Home/lib/security/cacerts

 

sudo cp /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/security/cacerts .

sudo cp /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/security/cacerts cacerts.org
sudo keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias david -file ncifcrf.cert
Certificate was added to keystore

 

The certificate should be added to the keystore. Now, copy the new cacerts version to the original position

sudo cp cacerts /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/lib/security/cacerts

 

3) Update Java configuration in R. The output may slightly change from windows, linux or mac. 

R CMD javareconf

 

Java interpreter : /usr/bin/java

Java version     : 1.8.0_60

Java home path   : /usr/lib/jvm/java-8-oracle/jre

Java compiler    : /usr/bin/javac

Java headers gen.: /usr/bin/javah

Java archive tool: /usr/bin/jar

 

Please check that both Java version and path are appropriate. In addition JNI support should also be available. 

 

4) Check that rJava R library works as supposed to.

R

library(rJava)

.jinit()

.jcall("java/lang/System", "S", "getProperty", "java.runtime.version")

[1] "1.8.0_20-b26"

 

In Mac the rJava that downloads is tied to 1.6 java version. If it is the case, you should install it from the source.

 

install.packages('rJava', type='source’)

library(rJava)

.jinit()

.jcall("java/lang/System", "S", "getProperty", "java.runtime.version")

[1] "1.8.0_20-b26"

 

5)Finally, use the new DAVID web service URL in RDAVIDWebService

library("RDAVIDWebService")

david<-DAVIDWebService(email="user@email", url="https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/")

david

DAVIDWebService object to access DAVID's website. 

User email:  user@email 

Available Gene List/s: not submitted yet. 

ADD REPLY
0
Entering edit mode

Hi Cristobal,

thanks for work around.

They work also for MAC OS X Mavericks 10.9.5.

Regards,

Rosario

ADD REPLY
0
Entering edit mode

Dear Cristobal,

On a Mac running OS X El Capitan version 10.11 I am getting stuck at the command:

echo -n | openssl s_client -connect david.ncifcrf.gov:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ncifcrf.cert

It returns the error: 

depth=0 OU = Domain Control Validated, CN = *.ncifcrf.gov

verify error:num=20:unable to get local issuer certificate

verify return:1

depth=0 OU = Domain Control Validated, CN = *.ncifcrf.gov

verify error:num=21:unable to verify the first certificate

verify return:1

DONE

Can you recommend a work around? I would like to send a lot of gene lists to DAVID but I've been struggling at various steps of the workaround.

Many thanks,

Christina May

ADD REPLY
0
Entering edit mode

Hi Christina,

The output you are getting is the appropiate one as it ends with DONE. Hence, the file ncifcrf.cert should have been created and you could contine with the rest of the steps. Please let me know if you could finish the guide.

Best,

Cristobal

ADD REPLY
0
Entering edit mode

Hi Cristobal,

Indeed, you are right that it worked. I found the real problem now - I downloaded Java 1.8.0_65 but I was copying the commands for Java 1.8.0_60! After fixing that everything works perfectly now. Thanks for your quick response. 

Best,

Christina

ADD REPLY
0
Entering edit mode

Hi Cristobal,

I also faced this problem and followed the instructions, and after setting new david<- "" webserver location I did get proper message:

DAVIDWebService object to access DAVID's website.
User email:  <my email>
Available Gene List/s: not submited yet.

However, when I am using now DAVIDSearch along with my email id in david.user, I am still getting following error:

Error in .jcall(stub, "S", "authenticate", email) :
  org.apache.axis2.AxisFault: Transport error: 301 Error: Moved Permanently

 

May I know what is still missing?

 

Regards,

Sudhir

 

 

ADD REPLY
0
Entering edit mode

Hello,

Yeah, same problem here. I just run all the procedure described above and it still doesn't work. In my case I'm using it together with the clusterProfiler package. I got:

> david<-DAVIDWebService(email="my_email", url="https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/")
>
> david
DAVIDWebService object to access DAVID's website.
User email:  my_email
Available Gene List/s: not submited yet.
>
> david_bp=enrichDAVID(gene=rownames(B45),idType = "ENSEMBL_GENE_ID", listType = "Gene",
+                      annotation = "GOTERM_BP_ALL",
+                      david.user="my_email")
[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.authenticate(DAVIDWebServiceStub.java:2288)
Error in .jcall(stub, "S", "authenticate", email) :
  org.apache.axis2.AxisFault: Transport error: 301 Error: Moved Permanently

 

Thanks for the help.

Daniel

 

 

> sessionInfo()
R version 3.2.4 (2016-03-10)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.4 (El Capitan)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
 [1] grid      parallel  stats4    stats     graphics  grDevices utils     datasets  methods  
[10] base     

other attached packages:
 [1] DOSE_2.8.2                  RDAVIDWebService_1.8.0      ggplot2_2.1.0              
 [4] GOstats_2.36.0              Category_2.36.0             GO.db_3.2.2                
 [7] Matrix_1.2-4                ReactomePA_1.14.4           Rgraphviz_2.14.0           
[10] graph_1.48.0                dplyr_0.4.3                 clusterProfiler_2.4.3      
[13] MeSH.Cal.SC5314.eg.db_1.5.0 MeSHDbi_1.6.0               org.Mm.eg.db_3.2.3         
[16] RSQLite_1.0.0               DBI_0.3.1                   AnnotationDbi_1.32.3       
[19] IRanges_2.4.8               S4Vectors_0.8.11            Biobase_2.30.0             
[22] BiocGenerics_0.16.1        

loaded via a namespace (and not attached):
 [1] KEGGREST_1.10.1        qvalue_2.2.2           genefilter_1.52.1      reshape2_1.4.1        
 [5] rJava_0.9-8            splines_3.2.4          lattice_0.20-33        colorspace_1.2-6      
 [9] graphite_1.16.0        XML_3.98-1.4           RBGL_1.46.0            survival_2.38-3       
[13] rappdirs_0.3.1         topGO_2.22.0           plyr_1.8.3             stringr_1.0.0         
[17] zlibbioc_1.16.0        Biostrings_2.38.4      munsell_0.4.3          GOSemSim_1.28.2       
[21] gtable_0.2.0           SparseM_1.7            GSEABase_1.32.0        Rcpp_0.12.4           
[25] xtable_1.8-2           reactome.db_1.54.1     scales_0.4.0           DO.db_2.9             
[29] annotate_1.48.0        XVector_0.10.0         png_0.1-7              stringi_1.0-1         
[33] tools_3.2.4            magrittr_1.5           lazyeval_0.1.10        assertthat_0.1        
[37] httr_1.1.0             AnnotationForge_1.12.2 R6_2.1.2               igraph_1.0.1         

 

ADD REPLY
0
Entering edit mode

Dear Daniel,

The problem is that  you have correctly make it worked for RDAVIDWebservice:

> david<-DAVIDWebService(email="my_email", url="https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/")
>
> david
DAVIDWebService object to access DAVID's website.
User email:  my_email
Available Gene List/s: not submited yet.

But, the enrichDAVID function call is still working with the old http version. I'll look into it to see if it can be updated.

[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

Best,

Cristobal

 

 

 

 

ADD REPLY
1
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hi Alberto,

DAVID moved to a new home. The url changed to the following. The frontend proxy only serve secure contents (https) but users can research how to bypass/avoid the certificate verification at their own risk of compromising data security.

https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/

Thanks,

Xiaoli

ADD COMMENT
0
Entering edit mode

In that case the DAVID team needs to fix their Java Client, and then the RDAVIDWebService team needs to update their code..

ADD REPLY
1
Entering edit mode
@cristobal-fresno-rodriguez-3838
Last seen 8.6 years ago
Argentina/Cordoba/Universidad Católica …

Hi Ben,

Could you please check your java version? The error described above is a java compatibility problem.

Please check the second post on this thread "Work around for the new DAVID Web service configuration" and let me know if you could solve the problem.

Best, 

Cristobal

0
Entering edit mode

Hi Cristobal,

I tried the work-around and it does work. Thanks very very much.

The one comment I would make is that on my computer, which is running Centos 7, all cacerts are symbolic links to a cacerts file in /etc/pki/ca-trust/extracted/java. In that directory is one other file, a README file, which says the following:

"Please never manually edit the files stored in this directory,
because your changes will be lost and the files automatically overwritten,
each time the update-ca-trust command gets executed."

I don't know what would cause the update-ca-trust command to be executed, but I guess if it is, I can repeat the work-around.

Thanks again.

-Ben

 

ADD REPLY
0
Entering edit mode

Hi Ben,

Great news!!! I'll include your suggestion in the next vignette. Also I'm working on a SOAP client for DAVID to avoid Java issues.

Best,

Cristobal

ADD REPLY
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hi, I have the same problem. My script worked fine until few days ago; now I have the same error.

Best,
Alberto

ADD COMMENT
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 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
ced.gob.cg • 0
@cedgobcg-8498
Last seen 9.3 years ago
Switzerland

Hi!

The only solution is then to wait for an update of the R package ?

 

Best,

 

Cédric

ADD COMMENT
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hi Cédric, yes, we need to wait for it.

Best,
Alberto

ADD COMMENT
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hi Cédric, yes, we need to wait for it.

Best,
Alberto

ADD COMMENT
0
Entering edit mode
@cristobal-fresno-rodriguez-3838
Last seen 8.6 years ago
Argentina/Cordoba/Universidad Católica …

Greetings,

Thank you very much for your interest in RDAVIDWebService. Unfortunately, I have been out of the office for a couple of weeks so I must apologize.

I will get back to you in order to give a proper answer to this issue as soon as I can, i.e., package workaround or package update.

Best regards,

Cristobal Fresno

0
Entering edit mode

Do you have an estimate for how long it is going to take to put a patch out? I'm prepping for quals and I need to know if I need to make my own tool.

Thank you for your hard work and dedication,

Ben

ADD REPLY
0
Entering edit mode
kmu004 ▴ 50
@kmu004-7739
Last seen 5.6 years ago
United States

Was wondering when the package update will be posted to address this issue? Thanks...

 

ADD COMMENT
0
Entering edit mode
@cristobal-fresno-rodriguez-3838
Last seen 8.6 years ago
Argentina/Cordoba/Universidad Católica …

Greetings,

We are workling in the solution with DAVID's team. As soon as we have a solution we will let you know.

Best,

Cristobal

0
Entering edit mode
@cristobal-fresno-rodriguez-3838
Last seen 8.6 years ago
Argentina/Cordoba/Universidad Católica …

Greetings,

We are workling in the solution with DAVID's team. As soon as we have a solution we will let you know.

Best,

Cristobal

0
Entering edit mode
@hanswerner-8636
Last seen 9.3 years ago
Germany

Hi DAVIDteam,

Thanks a lot for all the work you guys put into the tools! I am still receiving the "301 Error: Moved Permanently", so I was wondering if there were any updates.

Please do not feel rushed though. I think you made a very cool package so thanks a lot for looking into it!

-Hans

ADD COMMENT
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hello, I am trying the development version (1.7) of the R package, which allow to specify the url:

 

my_url = "https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/";
david = DAVIDWebService$new(email="alberto.termanini@ieo.eu", url=my_url);

However, I get this error now:

Error in .jcall(stub, "S", "authenticate", email) : 
  org.apache.axis2.AxisFault: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake

I was wondering if i need to write my own script because I have to make some urgent analysis and the package sill didn't work 

Best,
Alberto

 

 

ADD COMMENT
0
Entering edit mode
termanini ▴ 10
@termanini-8493
Last seen 8.3 years ago

Hello, I am trying the development version (1.7) of the R package, which allow to specify the url:

 

my_url = "https://david.ncifcrf.gov/webservice/services/DAVIDWebService.DAVIDWebServiceHttpSoap12Endpoint/";
david = DAVIDWebService$new(email="alberto.termanini@ieo.eu", url=my_url);

However, I get this error now:

Error in .jcall(stub, "S", "authenticate", email) : 
  org.apache.axis2.AxisFault: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake

I was wondering if i need to write my own script because I have to make some urgent analysis and the package sill didn't work 

Best,
Alberto

 

 

ADD COMMENT
0
Entering edit mode
Wittner, Ben ▴ 290
@wittner-ben-1031
Last seen 8.9 years ago
USA/Boston/Mass General Hospital

Hi, I too have the problem described above. The only reason I'm posting is that is the only way I can find to get an email notification when someone adds to this thread. Thanks for the package and I hope to be able to use it again soon. -Ben

 

ADD COMMENT

Login before adding your answer.

Traffic: 600 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6