Forum OpenACS Development: Re: OpenACS 5.9.0 and Oracle 12c

Posted by Brian Fenton on
Hi Maurizio

it is you who has done a good job! I didn't have to modify anything, it worked out of the box. I used the nsoracle.dll that you include in your release.

There is one issue of concern I noticed yesterday evening, that I need to spend more time looking at. Calls to ::util::http::get are failing.
See this bug


Posted by Maurizio Martignano on
Ah... Ok. Thank you.
While waiting for the bug fix, where i need to do some investigation, you can try something like this:
[exec wget]

Kind of awkward... but it should work...


Posted by Antonio Pisano on
Another way to circumvent the issue for the time being could be to try the curl implementation of http client, e.g. util::http::get -preference curl -url

For reference see

Posted by Brian Fenton on
Thank you Maurizio. Actually what is the canonical way to make a HTTP call with Naviserver? In our old AOLserver codebase, we have a mix of calls to ns_httpget, ad_httpget, and more recently calls to ns_http (this is the one that works best for us on Windows 2008).
Posted by Maurizio Martignano on
I have fixed the issue.

This is the change in the code:

if (connect(sock, saPtr, Ns_SockaddrGetSockLen(saPtr)) != 0) {
int err = ns_sockerrno;

#ifndef _WIN32
if (!async || (err != EINPROGRESS && err != EWOULDBLOCK)) {
if (!async || (err != WSAEWOULDBLOCK)) {
Ns_LogSockaddr(Warning, "SockConnect fails", saPtr);

The mod will be available in next version of my distribution.
Over the weekend.

Posted by Antonio Pisano on
Regarding this, ns_http is now the preferred low-level interface for http client funcionalities. A higher level interface, that deprecates all the "old school" procs like ad_httpget and such, you can find in [1] and [2].

These are basically wrappers around the api that make easier to issue the requests, also providing backward compatibility with Aolserver by using curl.

Hope this helps



Posted by Brian Fenton on
Thanks Antonio!