axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dami...@opensource.lk
Subject cvs head transport and parser abstration works on Linux
Date Wed, 19 May 2004 04:03:53 GMT
Hi,
It seems that transport layer abstraction and parser abstraction now work
on linux. Thanks Susantha. But it is still working only with apache1.
I tried with only expat. it works.
parser and transport layer both is loaded in to axis engine when it is
loaded by apache.
in $AXISCPP_HOME/src/engine/SOAPTransportFactory.cpp

m_pcLibraryPath = "/usr/local/Axis/libs/libaxis_transport.so"; //this will
be taken from configuration file

and in $AXISCPP_HOME/src/engine/XMLParserFactory.cpp

 m_pcLibraryPath = "/usr/local/Axis/libs/libaxis_xmlparser.so"; //this
will be taken from configuration file

That means that both the library paths are still hard coded until somebody
make it read from the configuration file.

To make it work, we need to build from $AXISCPP_HOME.
All transport libraries(libaxis_transport.so) and both
expat(libaxis_expat.so) and xercesc(libaxis_xercesc.so) are created in
$AXISCPP_HOME/bin

So when you run the following script from $AXIS_HOME(eg:/usr/local/Axis)

rm /usr/local/apache/libexec/libaxiscpp_mod.so
rm webservices/libAdminService.so
rm libs/libserver_engine.so
rm libs/libaxis_transport.so
rm libs/libaxis_xmlparser.so
cp -f $AXISCPP_HOME/bin/libAdminService.so webservices/
cp -f $AXISCPP_HOME/bin/libserver_engine.so libs/
cp -f $AXISCPP_HOME/bin/libaxiscpp_mod.so /usr/local/apache/libexec/
cp -f $AXISCPP_HOME/bin/libaxis_transport.so libs/
cp -f $AXISCPP_HOME/bin/libaxis_expat.so libs/libaxis_xmlparser.so
/usr/local/apache/bin/apachectl stop
sleep 2
/usr/local/apache/bin/apachectl start

all the libraries are loaded.

Note that in the line no. 10 of the script above we change
the name libaxis_expat.so to libaxis_xmlparser.so.
If we use xerces we need to change
libaxis_xercesc.so to libaxis_xmlparser.so.

bravo, now anybody could make their parsers and transport layers work with
Axis C++. But I think the api headers need more documentation for somebody
to work with it.

cheers
damitha

Mime
View raw message