You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by Raymond Zhou <ra...@yahoo.com> on 2008/08/13 00:00:38 UTC

SSL support using other packages other than openSSL ?

Hi, All,
�
I understand that AXIS2/c depends on openSSL to support SSL communication. I was wondering if it is possible, or if any other people have tried, to use other packages other than openSSL to do so. My company has licensed another product for support security-related features and this product support SSL, so we would prefer using this product instead of openSSL to aviod potential IP issues (We need to redistribute the product).
�
Thanks!
Ray


      

Re: SSL support using other packages other than openSSL ?

Posted by Raymond Zhou <ra...@yahoo.com>.
Hi Samisa,
 
Thanks for your reply. In that case, which module or files are implementing ssl related stuff? Is that all under src\core\transport\http\sender\ssl for a client (sender)? Is there any document for this?
 
Thanks much!
Ray

--- On Wed, 8/13/08, Samisa Abeysinghe <sa...@wso2.com> wrote:

From: Samisa Abeysinghe <sa...@wso2.com>
Subject: Re: SSL support using other packages other than openSSL ?
To: "Apache AXIS C User List" <ax...@ws.apache.org>
Date: Wednesday, August 13, 2008, 4:38 AM

Raymond Zhou wrote:
> Hi, All,
>  
> I understand that AXIS2/c depends on openSSL to support SSL 
> communication. I was wondering if it is possible, or if any other 
> people have tried, to use other packages other than openSSL to do so. 
> My company has licensed another product for support security-related 
> features and this product support SSL, so we would prefer using this 
> product instead of openSSL to aviod potential IP issues (We need to 
> redistribute the product).
>

Well, I think you can replace the current openSSL related 
implementations with whatever the library you wish to use.

There is no abstraction layer as such for SSL related implementation, 
but with some effort, you would be able to separate this out for your 
custom implementation.

Thanks,
Samisa...

>  
> Thanks!
> Ray
>
>
> No virus found in this incoming message.
> Checked by AVG - http://www.avg.com 
> Version: 8.0.138 / Virus Database: 270.6.1/1605 - Release Date: 8/11/2008
4:59 PM
>   


-- 
Samisa Abeysinghe 
Director, Engineering; WSO2 Inc.

http://www.wso2.com/ - "The Open Source SOA Company"


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org




      

Re: SSL support using other packages other than openSSL ?

Posted by Samisa Abeysinghe <sa...@wso2.com>.
Raymond Zhou wrote:
> Hi, All,
>  
> I understand that AXIS2/c depends on openSSL to support SSL 
> communication. I was wondering if it is possible, or if any other 
> people have tried, to use other packages other than openSSL to do so. 
> My company has licensed another product for support security-related 
> features and this product support SSL, so we would prefer using this 
> product instead of openSSL to aviod potential IP issues (We need to 
> redistribute the product).
>

Well, I think you can replace the current openSSL related 
implementations with whatever the library you wish to use.

There is no abstraction layer as such for SSL related implementation, 
but with some effort, you would be able to separate this out for your 
custom implementation.

Thanks,
Samisa...

>  
> Thanks!
> Ray
>
>
> No virus found in this incoming message.
> Checked by AVG - http://www.avg.com 
> Version: 8.0.138 / Virus Database: 270.6.1/1605 - Release Date: 8/11/2008 4:59 PM
>   


-- 
Samisa Abeysinghe 
Director, Engineering; WSO2 Inc.

http://www.wso2.com/ - "The Open Source SOA Company"


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org


Re: Install Issues

Posted by Eric R George <Er...@aero.org>.
My apologizes to the list for forgetting to change the subject line 
previously.

I'll have another look at the source build when I find some time.
Thanks
Eric




Nadir Amra <am...@us.ibm.com> 
Sent by: axis-c-user-return-6165-Eric.R.George=aero.org@ws.apache.org
08/13/2008 10:07 AM
Please respond to
"Apache AXIS C User List" <ax...@ws.apache.org>


To
"Apache AXIS C User List" <ax...@ws.apache.org>
cc
"Apache AXIS C User List" <ax...@ws.apache.org>
Subject
Re: SSL support using other packages other than openSSL ?






Eric,

Have not really worked on the server-side of things....the client is 
(latest code in SVN) is very stable. 

I would first urge you to build new binaries using ant from the code in 
SVN, the binaries you are using are very old and buggy. 

AXISCPP_DEPLOY should point to the directory containing etc/axiscpp_conf. 
For example, if I have the following

/client/etc/axiscpp.conf 

Then AXISCPP_DEPLOY should point to /client. 

If I have time I will try to go through the server-step process and update 

the docs.  I do plan on releasing newer binaries, but currently fixing 
bugs so I have no set time-table. 

Nadir Amra


Eric R George <Er...@aero.org> wrote on 08/13/2008 10:27:32 AM:

> 
> Ok, I sent this to the list the other day, but it hasn't shown up 
> yet??  Here's another try - sorry if people get duplicates. 
> 
> I'm getting pretty frustrated with the Axis C++ binary installation.
> I'm going to go step-by-step through the installation instructions 
> provided.  Sorry for the long email - think of it as a complete 
> newbie trying to learn your system. 
> 
> For what it's worth, I'm working on a Fedora Core 5 system 
> 
> I downloaded axis-c-linux-current-bin.tar several days ago and 
> unpacked it to reveal axis-c-1.6b-Linux-trace-bin 
> 
> Then I went to axis-c-1.6b-Linux-trace-bin/docs/install-guide.html 
> and found the instructions for server install & config. 
> 
> Step 1: Download Axis C++ 
> 
>         Done - unpacked to /home/myname/WebServices/axis-c-1.6b-
> Linux-trace-bin 
> 
> Step 2: Install Apache Web Server 
> 
>         Done - I have httpd-2.2.2-1.3 installed via RPM and modules 
> are supported. 
> 
> 3. Install Xerces C++ (2.2.0) 
> 
>         Done - I then downloaded & installed xerces-c-src_2_8_0 
> 
>         This yielded the following libraries: 
> 
>         /usr/local/lib/libxerces-c.so -> libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-c.so.28 -> libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-depdom.so -> libxerces-depdom.so.28.0 
>         /usr/local/lib/libxerces-depdom.so.28 -> 
libxerces-depdom.so.28.0 
>         /usr/local/lib/libxerces-depdom.so.28.0 
> 
> 4. Configure environment variables 
> 
>         Done: 
>         export AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-
> Linux-trace-bin/" 
> 
>         export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib" 
> 
>         (There appears to be a missing linefeed in the 3rd line of 
> this section) 
> 
> 5. Configure Engine Wide Settings in Configuration File 
> 
>         Ok, here is some confusion.  I read the following instruction: 
> 
>                 "A sample configuration file is installed in 
> $AXISCPP_DEPLOY/etc" 
> 
>         I understood earlier that AXISCPP_DEPLOY was to point to the
> directory I unpacked the tarball to.  In this case 
> /home/myname/WebServices/axis-c-1.6b-Linux-trace-bin  But there is 
> no etc directory here??  I did find an etc directory under 
> /home/myname/WebServices/axis-c-1.6b-Linux-trace-bin/deploy. 
> 
>         So, the first question: 
> 
> ************************************************************** 
> What should AXISCPP_DEPLOY point to?? 
> ************************************************************** 
> 
>         Should it point to the unpacked directory, or the 'deploy' 
> directory with it?  Or did I miss something above? 
> 
>         I'll take a guess and re-assign the AXISCPP_DEPLOY 
> environment variable to the deploy directory within the top-level 
directory: 
> 
>         export AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-
> Linux-trace-bin/deploy/" 
>         export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib" 
> 
>         So now I look in $AXISSCPP_DEPLOY/etc ... there is no 
> axiscpp.conf file present, as stated in your instructions?? 
> 
>         There is a axiscpp.conf_linux file, with a structure similar
> to what is described in the docs, so I copy it to axiscpp.conf  Not 
> to much of a leap, but it would be nice if the docs pointed this out. 
> 
>         cp $AXISCPP_DEPLOY/etc/axiscpp.conf_linux 
> $AXISCPP_DEPLOY/etc/axiscpp.conf 
> 
>         I go in and take a look ... and all of the paths reference 
> "/usr/local/axiscpp_deploy/".  There is nothing in the server 
> install instructions which says anything about copying stuff to 
> /usr/local/axiscpp_deploy.  Why not use the $AXISCPP_DEPLOY 
> environment variable? 
> 
>         So I change the paths to point to 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/ 
> 
>         Now my config file looks like this: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis_xmlparser.so 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis2_transport.so 
> 
>         Just for grins, I take a look for this stuff: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
>         No such file or directory - ok, I'll assume it creates this 
> file on the fly 
> 
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
>         No such file or directory - looking I see the following: 
> 
>         server.wsdd_linux 
>         server.wsdd_linux_handler 
> 
>         I'm guessing this is similar to the axiscpp.conf_linux 
> stuff, but which to rename??? 
> 
> *************************** 
> What is server.wsdd?  Candidates would appear to be: 
>         server.wsdd_linux 
>         server.wsdd_linux_handler 
> *************************** 
> 
>         I flip a coin and pick server.wsdd_linux 
>         cp deploy/etc/server.wsdd_linux deploy/etc/server.wsdd 
> 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
>         Again - so such file.  Will assume it will be created on the 
fly. 
> 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis_xercesc.so 
>         No such file or directory. 
> 
>         In fact, a search of the directory tree finds nothing by 
> this name.  Nothing in the Xerces directory matches either.  In 
> fact, nothing on my filesystem matches, and this is the first time 
> libaxis_xercesc.so is mentioned at all in this document. What the 
> heck is it??? 
> 
>         I then notice that the client install section it refers to 
> libaxis_xerces.so - which is in the axis install directory, but not 
> in deploy/lib  A typo maybe? 
>         There is also a file called libxerces-c.so to add to the 
confusion?? 
> 
> **************************************** 
> What is libaxis_xercesc.so? 
> Should I copy axis-c-1.6b-Linux-trace-bin/lib/axis/libaxis_xerces.so
> to deploy/lib - or point the config file to it as it stands? 
> **************************************** 
> 
>         So I make a WAG and copy everything in axis-c-1.6b-Linux-
> trace-bin/lib to deploy/lib: 
> 
>         cp -r axis-c-1.6b-Linux-trace-bin/lib/* axis-c-1.6b-Linux-
> trace-bin/deploy/lib 
> 
>         This seems to indicate that $AXISCPP_DEPLOY should point to 
> the base directory (/home/myname/axis-c-1.6b-Linux-trace-bin) rather
> then the deploy directory (axis-c-1.6b-Linux-trace-bin/deploy) - but
> this breaks the config files located in axis-c-1.6b-Linux-trace-
> bin/deploy/etc ??? 
> 
>         And finally, why do we install Xerces if the library is 
> already provided? 
> 
>         Another note - the empty README.txt files scattered 
> everywhere are a nice touch on the whole confusion thing. 
> 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis2_transport.so 
>         Again - there is no libaxis2_transport.so anywhere??? 
> 
>         There is a "libhttp_transport.so" - so I point it to that. 
> 
> ***************************************** 
> What is libaxis2_transport.so??? 
> ***************************************** 
> 
>         There is a line in the documentation which is not in the 
> sample config file: 
> 
>         Channel_HTTP:
> /usr/local/axiscpp_deploy/lib/libaxis3_transport_channel.so 
> 
>         Of course, there is no "libaxis3_transport_channel.so" on 
> the filesystem. 
> 
>         There is a libhttp_channel.so - no "transport" in the name, 
> but it's the closest I have. 
> 
> ****************************************** 
> Is Channel_HTTP needed in the config file?  Docs & sample are 
inconsistent. 
> What is libaxis3_transport_channel.so? 
> ****************************************** 
> 
> Now my config file looks like this: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libaxis_xerces.so 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libhttp_transport.so 
> Channel_HTTP:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libhttp_channel.so 
> 
> On to the next step... 
> 
> 6. Setting Axis files to be executable 
>         chmod -R 777 $AXISCPP_DEPLOY 
> 
>         Ok, I'll do it - but it makes me nervous setting stuff 
> related to server or CGI stuff to 777  I'll play with this later if 
> I get things working. 
> 
> 7. Configure Apache Module 
>         Ok, I cut and pasted the stuff from the documentation 
> directly into my httpd.conf file: 
> 
>         LoadModule axis_module modules/libaxiscpp_mod2.so 
>         <Location /axis> 
>          SetHandler axis 
>          </Location> 
> 
>         The copy the module to the apache module directory: 
> 
>         cp ./lib/axis/libaxiscpp_mod2.so /usr/lib/httpd/modules/ 
> 
>         And then restart apache - to the following error message: 
> 
> "Starting httpd: httpd: Syntax error on line 992 of 
> /etc/httpd/conf/httpd.conf: Cannot load 
> /etc/httpd/modules/libaxiscpp_mod2.so into server: libaxis_server.
> so: cannot open shared object file: No such file or directory" 
> 
>         There is a libaxis_server.so - but the apache user doesn't 
> know about it, because the new LD_LIBRARY_PATH isn't set for that user. 
> 
>         So I add the following lines to /etc/ld.so.conf: 
> 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis 
> 
>         and run ldconfig. 
> 
>         I try to start apache again, and now get the following: 
> 
> "Starting httpd: httpd: Syntax error on line 992 of 
> /etc/httpd/conf/httpd.conf: API module structure `axis_module' in 
> file /etc/httpd/modules/libaxiscpp_mod2.so is garbled - perhaps this
> is not an Apache module DSO?" 
> 
> I have no idea what this means - I'm stuck.  I made a brief attempt 
> at the axis c++ source install - and quickly got bogged down there as 
well. 
> 
> So ... any suggestions? 
> Can I expect the rest of the learning curve for this tool to be as 
> convoluted and poorly documented.  If so, I may cut my losses and 
> find another way. 
> 
> I'd really like this to work though, because everything I want to do
> as a web service already exists as C/C++ code.  Wrapping it to an 
> intermediate language will be a PITA - the most likely candidate 
> would seem to be JAVA, which I don't know.  So re-writing it to that
> language isn't feasible either.  So I hope I can make this work. 
> 
> Thanks 
> Eric 


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org



Re: SSL support using other packages other than openSSL ?

Posted by Nadir Amra <am...@us.ibm.com>.
Eric,

Have not really worked on the server-side of things....the client is 
(latest code in SVN) is very stable. 

I would first urge you to build new binaries using ant from the code in 
SVN, the binaries you are using are very old and buggy. 

AXISCPP_DEPLOY should point to the directory containing etc/axiscpp_conf. 
For example, if I have the following

/client/etc/axiscpp.conf 

Then AXISCPP_DEPLOY should point to /client. 

If I have time I will try to go through the server-step process and update 
the docs.  I do plan on releasing newer binaries, but currently fixing 
bugs so I have no set time-table. 

Nadir Amra


Eric R George <Er...@aero.org> wrote on 08/13/2008 10:27:32 AM:

> 
> Ok, I sent this to the list the other day, but it hasn't shown up 
> yet??  Here's another try - sorry if people get duplicates. 
> 
> I'm getting pretty frustrated with the Axis C++ binary installation.
> I'm going to go step-by-step through the installation instructions 
> provided.  Sorry for the long email - think of it as a complete 
> newbie trying to learn your system. 
> 
> For what it's worth, I'm working on a Fedora Core 5 system 
> 
> I downloaded axis-c-linux-current-bin.tar several days ago and 
> unpacked it to reveal axis-c-1.6b-Linux-trace-bin 
> 
> Then I went to axis-c-1.6b-Linux-trace-bin/docs/install-guide.html 
> and found the instructions for server install & config. 
> 
> Step 1: Download Axis C++ 
> 
>         Done - unpacked to /home/myname/WebServices/axis-c-1.6b-
> Linux-trace-bin 
> 
> Step 2: Install Apache Web Server 
> 
>         Done - I have httpd-2.2.2-1.3 installed via RPM and modules 
> are supported. 
> 
> 3. Install Xerces C++ (2.2.0) 
> 
>         Done - I then downloaded & installed xerces-c-src_2_8_0 
> 
>         This yielded the following libraries: 
> 
>         /usr/local/lib/libxerces-c.so -> libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-c.so.28 -> libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-c.so.28.0 
>         /usr/local/lib/libxerces-depdom.so -> libxerces-depdom.so.28.0 
>         /usr/local/lib/libxerces-depdom.so.28 -> 
libxerces-depdom.so.28.0 
>         /usr/local/lib/libxerces-depdom.so.28.0 
> 
> 4. Configure environment variables 
> 
>         Done: 
>         export AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-
> Linux-trace-bin/" 
> 
>         export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib" 
> 
>         (There appears to be a missing linefeed in the 3rd line of 
> this section) 
> 
> 5. Configure Engine Wide Settings in Configuration File 
> 
>         Ok, here is some confusion.  I read the following instruction: 
> 
>                 "A sample configuration file is installed in 
> $AXISCPP_DEPLOY/etc" 
> 
>         I understood earlier that AXISCPP_DEPLOY was to point to the
> directory I unpacked the tarball to.  In this case 
> /home/myname/WebServices/axis-c-1.6b-Linux-trace-bin  But there is 
> no etc directory here??  I did find an etc directory under 
> /home/myname/WebServices/axis-c-1.6b-Linux-trace-bin/deploy. 
> 
>         So, the first question: 
> 
> ************************************************************** 
> What should AXISCPP_DEPLOY point to?? 
> ************************************************************** 
> 
>         Should it point to the unpacked directory, or the 'deploy' 
> directory with it?  Or did I miss something above? 
> 
>         I'll take a guess and re-assign the AXISCPP_DEPLOY 
> environment variable to the deploy directory within the top-level 
directory: 
> 
>         export AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-
> Linux-trace-bin/deploy/" 
>         export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib" 
> 
>         So now I look in $AXISSCPP_DEPLOY/etc ... there is no 
> axiscpp.conf file present, as stated in your instructions?? 
> 
>         There is a axiscpp.conf_linux file, with a structure similar
> to what is described in the docs, so I copy it to axiscpp.conf  Not 
> to much of a leap, but it would be nice if the docs pointed this out. 
> 
>         cp $AXISCPP_DEPLOY/etc/axiscpp.conf_linux 
> $AXISCPP_DEPLOY/etc/axiscpp.conf 
> 
>         I go in and take a look ... and all of the paths reference 
> "/usr/local/axiscpp_deploy/".  There is nothing in the server 
> install instructions which says anything about copying stuff to 
> /usr/local/axiscpp_deploy.  Why not use the $AXISCPP_DEPLOY 
> environment variable? 
> 
>         So I change the paths to point to 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/ 
> 
>         Now my config file looks like this: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis_xmlparser.so 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis2_transport.so 
> 
>         Just for grins, I take a look for this stuff: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
>         No such file or directory - ok, I'll assume it creates this 
> file on the fly 
> 
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
>         No such file or directory - looking I see the following: 
> 
>         server.wsdd_linux 
>         server.wsdd_linux_handler 
> 
>         I'm guessing this is similar to the axiscpp.conf_linux 
> stuff, but which to rename??? 
> 
> *************************** 
> What is server.wsdd?  Candidates would appear to be: 
>         server.wsdd_linux 
>         server.wsdd_linux_handler 
> *************************** 
> 
>         I flip a coin and pick server.wsdd_linux 
>         cp deploy/etc/server.wsdd_linux deploy/etc/server.wsdd 
> 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
>         Again - so such file.  Will assume it will be created on the 
fly. 
> 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis_xercesc.so 
>         No such file or directory. 
> 
>         In fact, a search of the directory tree finds nothing by 
> this name.  Nothing in the Xerces directory matches either.  In 
> fact, nothing on my filesystem matches, and this is the first time 
> libaxis_xercesc.so is mentioned at all in this document. What the 
> heck is it??? 
> 
>         I then notice that the client install section it refers to 
> libaxis_xerces.so - which is in the axis install directory, but not 
> in deploy/lib  A typo maybe? 
>         There is also a file called libxerces-c.so to add to the 
confusion?? 
> 
> **************************************** 
> What is libaxis_xercesc.so? 
> Should I copy axis-c-1.6b-Linux-trace-bin/lib/axis/libaxis_xerces.so
> to deploy/lib - or point the config file to it as it stands? 
> **************************************** 
> 
>         So I make a WAG and copy everything in axis-c-1.6b-Linux-
> trace-bin/lib to deploy/lib: 
> 
>         cp -r axis-c-1.6b-Linux-trace-bin/lib/* axis-c-1.6b-Linux-
> trace-bin/deploy/lib 
> 
>         This seems to indicate that $AXISCPP_DEPLOY should point to 
> the base directory (/home/myname/axis-c-1.6b-Linux-trace-bin) rather
> then the deploy directory (axis-c-1.6b-Linux-trace-bin/deploy) - but
> this breaks the config files located in axis-c-1.6b-Linux-trace-
> bin/deploy/etc ??? 
> 
>         And finally, why do we install Xerces if the library is 
> already provided? 
> 
>         Another note - the empty README.txt files scattered 
> everywhere are a nice touch on the whole confusion thing. 
> 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/libaxis2_transport.so 
>         Again - there is no libaxis2_transport.so anywhere??? 
> 
>         There is a "libhttp_transport.so" - so I point it to that. 
> 
> ***************************************** 
> What is libaxis2_transport.so??? 
> ***************************************** 
> 
>         There is a line in the documentation which is not in the 
> sample config file: 
> 
>         Channel_HTTP:
> /usr/local/axiscpp_deploy/lib/libaxis3_transport_channel.so 
> 
>         Of course, there is no "libaxis3_transport_channel.so" on 
> the filesystem. 
> 
>         There is a libhttp_channel.so - no "transport" in the name, 
> but it's the closest I have. 
> 
> ****************************************** 
> Is Channel_HTTP needed in the config file?  Docs & sample are 
inconsistent. 
> What is libaxis3_transport_channel.so? 
> ****************************************** 
> 
> Now my config file looks like this: 
> 
> 
LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
> WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/etc/server.wsdd 
> ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/log/AxisClientLog 
> XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libaxis_xerces.so 
> Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libhttp_transport.so 
> Channel_HTTP:/home/myname/WebService/axis-c-1.6b-Linux-trace-
> bin/deploy/lib/axis/libhttp_channel.so 
> 
> On to the next step... 
> 
> 6. Setting Axis files to be executable 
>         chmod -R 777 $AXISCPP_DEPLOY 
> 
>         Ok, I'll do it - but it makes me nervous setting stuff 
> related to server or CGI stuff to 777  I'll play with this later if 
> I get things working. 
> 
> 7. Configure Apache Module 
>         Ok, I cut and pasted the stuff from the documentation 
> directly into my httpd.conf file: 
> 
>         LoadModule axis_module modules/libaxiscpp_mod2.so 
>         <Location /axis> 
>          SetHandler axis 
>          </Location> 
> 
>         The copy the module to the apache module directory: 
> 
>         cp ./lib/axis/libaxiscpp_mod2.so /usr/lib/httpd/modules/ 
> 
>         And then restart apache - to the following error message: 
> 
> "Starting httpd: httpd: Syntax error on line 992 of 
> /etc/httpd/conf/httpd.conf: Cannot load 
> /etc/httpd/modules/libaxiscpp_mod2.so into server: libaxis_server.
> so: cannot open shared object file: No such file or directory" 
> 
>         There is a libaxis_server.so - but the apache user doesn't 
> know about it, because the new LD_LIBRARY_PATH isn't set for that user. 
> 
>         So I add the following lines to /etc/ld.so.conf: 
> 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib 
> /home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis 
> 
>         and run ldconfig. 
> 
>         I try to start apache again, and now get the following: 
> 
> "Starting httpd: httpd: Syntax error on line 992 of 
> /etc/httpd/conf/httpd.conf: API module structure `axis_module' in 
> file /etc/httpd/modules/libaxiscpp_mod2.so is garbled - perhaps this
> is not an Apache module DSO?" 
> 
> I have no idea what this means - I'm stuck.  I made a brief attempt 
> at the axis c++ source install - and quickly got bogged down there as 
well. 
> 
> So ... any suggestions? 
> Can I expect the rest of the learning curve for this tool to be as 
> convoluted and poorly documented.  If so, I may cut my losses and 
> find another way. 
> 
> I'd really like this to work though, because everything I want to do
> as a web service already exists as C/C++ code.  Wrapping it to an 
> intermediate language will be a PITA - the most likely candidate 
> would seem to be JAVA, which I don't know.  So re-writing it to that
> language isn't feasible either.  So I hope I can make this work. 
> 
> Thanks 
> Eric 


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org


Re: SSL support using other packages other than openSSL ?

Posted by Eric R George <Er...@aero.org>.
Ok, I sent this to the list the other day, but it hasn't shown up yet?? 
Here's another try - sorry if people get duplicates.

I'm getting pretty frustrated with the Axis C++ binary installation.  I'm 
going to go step-by-step through the installation instructions provided. 
Sorry for the long email - think of it as a complete newbie trying to 
learn your system.

For what it's worth, I'm working on a Fedora Core 5 system

I downloaded axis-c-linux-current-bin.tar several days ago and unpacked it 
to reveal axis-c-1.6b-Linux-trace-bin

Then I went to axis-c-1.6b-Linux-trace-bin/docs/install-guide.html and 
found the instructions for server install & config.

Step 1: Download Axis C++

        Done - unpacked to 
/home/myname/WebServices/axis-c-1.6b-Linux-trace-bin

Step 2: Install Apache Web Server

        Done - I have httpd-2.2.2-1.3 installed via RPM and modules are 
supported.

3. Install Xerces C++ (2.2.0)

        Done - I then downloaded & installed xerces-c-src_2_8_0

        This yielded the following libraries:

        /usr/local/lib/libxerces-c.so -> libxerces-c.so.28.0
        /usr/local/lib/libxerces-c.so.28 -> libxerces-c.so.28.0
        /usr/local/lib/libxerces-c.so.28.0
        /usr/local/lib/libxerces-depdom.so -> libxerces-depdom.so.28.0
        /usr/local/lib/libxerces-depdom.so.28 -> libxerces-depdom.so.28.0
        /usr/local/lib/libxerces-depdom.so.28.0

4. Configure environment variables

        Done:
        export 
AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/"

        export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib"

        (There appears to be a missing linefeed in the 3rd line of this 
section)

5. Configure Engine Wide Settings in Configuration File

        Ok, here is some confusion.  I read the following instruction:

                "A sample configuration file is installed in 
$AXISCPP_DEPLOY/etc"

        I understood earlier that AXISCPP_DEPLOY was to point to the 
directory I unpacked the tarball to.  In this case 
/home/myname/WebServices/axis-c-1.6b-Linux-trace-bin  But there is no etc 
directory here??  I did find an etc directory under 
/home/myname/WebServices/axis-c-1.6b-Linux-trace-bin/deploy.

        So, the first question:

**************************************************************
What should AXISCPP_DEPLOY point to??
**************************************************************

        Should it point to the unpacked directory, or the 'deploy' 
directory with it?  Or did I miss something above?

        I'll take a guess and re-assign the AXISCPP_DEPLOY environment 
variable to the deploy directory within the top-level directory:

        export 
AXISCPP_DEPLOY="/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/"
        export LD_LIBRARY_PATH="/usr/local/lib:$AXISCPP_DEPLOY/lib"

        So now I look in $AXISSCPP_DEPLOY/etc ... there is no axiscpp.conf 
file present, as stated in your instructions?? 

        There is a axiscpp.conf_linux file, with a structure similar to 
what is described in the docs, so I copy it to axiscpp.conf  Not to much 
of a leap, but it would be nice if the docs pointed this out.

        cp $AXISCPP_DEPLOY/etc/axiscpp.conf_linux 
$AXISCPP_DEPLOY/etc/axiscpp.conf

        I go in and take a look ... and all of the paths reference 
"/usr/local/axiscpp_deploy/".  There is nothing in the server install 
instructions which says anything about copying stuff to 
/usr/local/axiscpp_deploy.  Why not use the $AXISCPP_DEPLOY environment 
variable?

        So I change the paths to point to 
/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/

        Now my config file looks like this:

LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/etc/server.wsdd
ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisClientLog
XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/libaxis_xmlparser.so
Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/libaxis2_transport.so

        Just for grins, I take a look for this stuff:

LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
        No such file or directory - ok, I'll assume it creates this file 
on the fly

WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/etc/server.wsdd
        No such file or directory - looking I see the following:

        server.wsdd_linux
        server.wsdd_linux_handler

        I'm guessing this is similar to the axiscpp.conf_linux stuff, but 
which to rename???

***************************
What is server.wsdd?  Candidates would appear to be:
        server.wsdd_linux
        server.wsdd_linux_handler
***************************

        I flip a coin and pick server.wsdd_linux
        cp deploy/etc/server.wsdd_linux deploy/etc/server.wsdd

ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisClientLog
        Again - so such file.  Will assume it will be created on the fly.

XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/libaxis_xercesc.so
        No such file or directory.

        In fact, a search of the directory tree finds nothing by this 
name.  Nothing in the Xerces directory matches either.  In fact, nothing 
on my filesystem matches, and this is the first time libaxis_xercesc.so is 
mentioned at all in this document. What the heck is it??? 

        I then notice that the client install section it refers to 
libaxis_xerces.so - which is in the axis install directory, but not in 
deploy/lib  A typo maybe?
        There is also a file called libxerces-c.so to add to the 
confusion??

****************************************
What is libaxis_xercesc.so?
Should I copy axis-c-1.6b-Linux-trace-bin/lib/axis/libaxis_xerces.so to 
deploy/lib - or point the config file to it as it stands?
****************************************

        So I make a WAG and copy everything in 
axis-c-1.6b-Linux-trace-bin/lib to deploy/lib:

        cp -r axis-c-1.6b-Linux-trace-bin/lib/* 
axis-c-1.6b-Linux-trace-bin/deploy/lib

        This seems to indicate that $AXISCPP_DEPLOY should point to the 
base directory (/home/myname/axis-c-1.6b-Linux-trace-bin) rather then the 
deploy directory (axis-c-1.6b-Linux-trace-bin/deploy) - but this breaks 
the config files located in axis-c-1.6b-Linux-trace-bin/deploy/etc ???

        And finally, why do we install Xerces if the library is already 
provided?

        Another note - the empty README.txt files scattered everywhere are 
a nice touch on the whole confusion thing.

Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/libaxis2_transport.so
        Again - there is no libaxis2_transport.so anywhere???

        There is a "libhttp_transport.so" - so I point it to that.

*****************************************
What is libaxis2_transport.so???
*****************************************

        There is a line in the documentation which is not in the sample 
config file:

 Channel_HTTP:/usr/local/axiscpp_deploy/lib/libaxis3_transport_channel.so

        Of course, there is no "libaxis3_transport_channel.so" on the 
filesystem.

        There is a libhttp_channel.so - no "transport" in the name, but 
it's the closest I have.

******************************************
Is Channel_HTTP needed in the config file?  Docs & sample are 
inconsistent.
What is libaxis3_transport_channel.so?
******************************************

Now my config file looks like this:

LogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisLog
WSDDFilePath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/etc/server.wsdd
ClientLogPath:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/log/AxisClientLog
XMLParser:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis/libaxis_xerces.so
Transport_http:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis/libhttp_transport.so
Channel_HTTP:/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis/libhttp_channel.so

On to the next step...

6. Setting Axis files to be executable
        chmod -R 777 $AXISCPP_DEPLOY

        Ok, I'll do it - but it makes me nervous setting stuff related to 
server or CGI stuff to 777  I'll play with this later if I get things 
working.

7. Configure Apache Module
        Ok, I cut and pasted the stuff from the documentation directly 
into my httpd.conf file:

        LoadModule axis_module modules/libaxiscpp_mod2.so 
        <Location /axis> 
         SetHandler axis 
         </Location> 

        The copy the module to the apache module directory:

        cp ./lib/axis/libaxiscpp_mod2.so /usr/lib/httpd/modules/

        And then restart apache - to the following error message:

"Starting httpd: httpd: Syntax error on line 992 of 
/etc/httpd/conf/httpd.conf: Cannot load 
/etc/httpd/modules/libaxiscpp_mod2.so into server: libaxis_server.so: 
cannot open shared object file: No such file or directory"

        There is a libaxis_server.so - but the apache user doesn't know 
about it, because the new LD_LIBRARY_PATH isn't set for that user.

        So I add the following lines to /etc/ld.so.conf:

/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib
/home/myname/WebService/axis-c-1.6b-Linux-trace-bin/deploy/lib/axis

        and run ldconfig.

        I try to start apache again, and now get the following:

"Starting httpd: httpd: Syntax error on line 992 of 
/etc/httpd/conf/httpd.conf: API module structure `axis_module' in file 
/etc/httpd/modules/libaxiscpp_mod2.so is garbled - perhaps this is not an 
Apache module DSO?"

I have no idea what this means - I'm stuck.  I made a brief attempt at the 
axis c++ source install - and quickly got bogged down there as well.

So ... any suggestions?
Can I expect the rest of the learning curve for this tool to be as 
convoluted and poorly documented.  If so, I may cut my losses and find 
another way. 

I'd really like this to work though, because everything I want to do as a 
web service already exists as C/C++ code.  Wrapping it to an intermediate 
language will be a PITA - the most likely candidate would seem to be JAVA, 
which I don't know.  So re-writing it to that language isn't feasible 
either.  So I hope I can make this work.

Thanks
Eric