Hi I've been banging my head against this problem for a long time already, maybe somebody on this list has an idea.
I try to update a datastream with the APIM method modifyDatastreamByReference. It works perfectly find with http URLs. But when I try to access a secure httpS URL it throws an error. This is what I see in the fedora.log: ERROR 2008-11-10 11:08:59.980 [http-8080-Processor15] (FedoraAPIMBindingSOAPHTTPImpl) Error modifying datastream by reference fedora.server.errors.GeneralException: Error getting https://switch.ch/switch-web/images/start_switch_logo.gif at fedora .server .storage .DefaultExternalContentManager.get(DefaultExternalContentManager.java: 119) at fedora .server .storage .DefaultExternalContentManager .getExternalContent(DefaultExternalContentManager.java:179) at fedora.server.storage.DefaultDOManager.doCommit(DefaultDOManager.java: 1019) at fedora.server.storage.GSearchDOManager.doCommit(GSearchDOManager.java: 142) at fedora.server.storage.SimpleDOWriter.commit(SimpleDOWriter.java:329) at fedora .server .management .DefaultManagement.modifyDatastreamByReference(DefaultManagement.java: 740) at fedora .server .management .FedoraAPIMBindingSOAPHTTPImpl .modifyDatastreamByReference(FedoraAPIMBindingSOAPHTTPImpl.java:286) at fedora .server .management .FedoraAPIMBindingSOAPHTTPSkeleton .modifyDatastreamByReference(FedoraAPIMBindingSOAPHTTPSkeleton.java:502) 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:585) at org .apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java: 397) at org .apache .axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java: 323) at org .apache .axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453) at org.apache.axis.server.AxisServer.invoke(AxisServer.java: 281) at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at org .apache .axis.transport.http.AxisServletBase.service(AxisServletBase.java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 252) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at fedora .server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java: 173) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 202) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at fedora .server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java: 173) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 202) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at fedora .server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java: 173) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 202) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at fedora .server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java: 173) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 202) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at fedora .server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java: 173) at org .apache .catalina .core .ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 202) at org .apache .catalina .core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org .apache .catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: 213) at org .apache .catalina.core.StandardContextValve.invoke(StandardContextValve.java: 178) at org .apache .catalina .authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524) at org .apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java: 126) at org .apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java: 105) at org .apache .catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java: 148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java: 869) at org.apache.coyote.http11.Http11BaseProtocol $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org .apache .tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org .apache .tomcat .util .net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java: 80) at org.apache.tomcat.util.threads.ThreadPool $ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595) Caused by: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:166) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java: 1584) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java: 1547) at com .sun .net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java: 1530) at com .sun .net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java: 1456) at com .sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:64) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123) at org .apache .commons .httpclient .HttpConnection.flushRequestOutputStream(HttpConnection.java:827) at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager $ HttpConnectionAdapter .flushRequestOutputStream(MultiThreadedHttpConnectionManager.java:1523) at org .apache .commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java: 2018) at org .apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java: 994) at org .apache .commons .httpclient .HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397) at org .apache .commons .httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java: 170) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java: 396) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java: 324) at fedora.common.http.HttpInputStream.<init>(HttpInputStream.java:33) at fedora.common.http.WebClient.get(WebClient.java:129) at fedora.common.http.WebClient.get(WebClient.java:93) at fedora .server .storage .DefaultExternalContentManager.get(DefaultExternalContentManager.java: 112) ... 53 more Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:56) at sun.security.validator.Validator.getInstance(Validator.java:146) at com .sun .net .ssl .internal .ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:105) at com .sun .net .ssl .internal .ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java: 167) at com .sun .net .ssl .internal .ssl.JsseX509TrustManager.checkServerTrusted(SSLContextImpl.java:320) at com .sun .net .ssl .internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java: 841) at com .sun .net .ssl .internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:106) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java: 433) at com .sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 877) at com .sun .net .ssl .internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java: 1089) at com .sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java: 618) at com .sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59) ... 67 more Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java: 183) at java.security.cert.PKIXParameters.<init>(PKIXParameters.java:103) at java .security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java: 87) at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:54) ... 79 more I have googled about the empty trustAnchors parameter, but haven't found anything to solve my problem. I'm using Fedora 2.2.3. Any ideas? Regards Christian ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Fedora-commons-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/fedora-commons-users
