BookmarkSubscribeRSS Feed
RobP
Quartz | Level 8

I have a call to proc soap that only periodically works despite nothing being changed.  By this I mean the code does not change, the SOAP packet I'm sending does not change, I can run the soap call and it will work fine a dozen times in a row, then fail a bunch of times in a row.

 

Below is the error I get when it fails:

 

ERROR: org.springframework.ws.client.WebServiceIOException: I/O error:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification
path to requested target; nested exception is javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification
path to requested target

 

Initially I thought I may have been running out of disk space (causing an I/O error) but there is ample disk space.

 

I have no idea how to go about debugging or fixing this kind of intermittent message.  My google-fu has failed me.  Does anyone have any ideas of what could be happening?

4 REPLIES 4
RobP
Quartz | Level 8
I'm unable to replicate this error message when making the SOAP call from the command line using curl, so I believe it's directly related to SAS.
ChrisHemedinger
Community Manager

Since it works sometimes, you must already have the certificate store configured as described here.

 

Still might be worth a review of your PROC OPTIONS results, especially the JRE options.  Are you making a series of calls (like in a macro program) and they work...until they don't?  Or are the failures happening across different SAS sessions?  I'd be interested to know if the PROC SOAP calls work in a fresh session, but then begin to fail after many calls.

 

PROC SOAP uses the Java runtime under the covers, and that has a bit of overhead.  Not that you want to go making changes to an established process, but if there is a REST method to accomplish what you want, PROC HTTP is leaner and meaner, especially in the recent versions of SAS 9.4.

 

 

It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.
RobP
Quartz | Level 8

Actually I haven't made any changes to the certificate store from the default installation. I was surprised that it worked seeing as that page says that SOAP over HTTPS requires the cert store to be updated. Once I got it working I had mentally ruled out those cert store configurations as a requirement.

 

The process I'm working on is a new process (in the development stage) so making changes is not a big deal but I did choose WSDL because the API documentation was better than the docs for the REST methods.   If I can't resolve this then I guess I'll have to switch to using the REST methods. 

 

The code doesn't run in a macro - I've just been resubmitting the same piece of code in order to test my dev code.  Literally highlighting the block of code and pressing F3 multiple times to submit it.  It seems to either run perfectly for many submits in a row, until a point where it will fail, and continue to fail multiple times in a row, and then starts to work again.  ie. the success/fail results seem to all be clustered together.

ChrisHemedinger
Community Manager

If there is a REST method available and it's supported (skimpy doc notwithstanding), I'd go for that.  We have lots of examples of PROC HTTP and REST APIs -- here are a few.

It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 1802 views
  • 0 likes
  • 2 in conversation