You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2004/07/15 09:26:53 UTC
cvs commit: ws-axis/c/src/transport/libwww readme.txt LibWWWTransport.cpp
samisa 2004/07/15 00:26:53
Modified: c/src/transport/libwww LibWWWTransport.cpp
Added: c/src/transport/libwww readme.txt
Log:
Readme for LibWWW based SOAPTrasport implementation.
Revision Changes Path
1.3 +6 -2 ws-axis/c/src/transport/libwww/LibWWWTransport.cpp
Index: LibWWWTransport.cpp
===================================================================
RCS file: /home/cvs/ws-axis/c/src/transport/libwww/LibWWWTransport.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- LibWWWTransport.cpp 15 Jul 2004 04:25:18 -0000 1.2
+++ LibWWWTransport.cpp 15 Jul 2004 07:26:53 -0000 1.3
@@ -39,7 +39,11 @@
HTPrint("%s\n", HTChunk_m_pcData(m_pResult));
HTChunk_delete(m_pResult);
}*/
-
+ //if (HTNet_isIdle())
+ //if (HTNet_idle())
+ //if (HTNet_isEmpty())
+ HTRequest_forceFlush(request);
+ HTPrint("req count %d\n",HTNet_count());
HTEventList_stopLoop();
return status;
}
@@ -94,7 +98,7 @@
// free(m_pcReceived);
//Terminate libwww
- HTProfile_delete();
+ //HTProfile_delete();
//Samisa:This deletion should also go to the base class
//destructos as is the setEndpointUri method should
1.1 ws-axis/c/src/transport/libwww/readme.txt
Index: readme.txt
===================================================================
The implementation of SOAPTransport interface using LibWWW.
The Axis C++ server side fails to work with 100-continue.
Axis Java is capable of managing 100-continue.
This is the default mode used in LibWWW.
I used a macro in Makefile.am to enable/disable 100-continue.
(use -DHT_EXT_CONTINUE to enable or -UHT_EXT_CONTINUE to disable in
AM_CPPFLAGS setting)
I observed that the transport is much faster when it is used without
100-continue. However, to disable 100-continue, LibWWW need to be built
with –with-extension option (--./configure with-extension)
You do not need to bother about location of LibWWW headers and libraries,
provided that you have done the LibWWW installation properly.
I have used libwww-config in the Makefile.am to pick LibWWW specific settings.
Once you build the library, you could use it by speci the location of the
lib in $AXIS_HOME/axiscpp.conf file.
e.g.
Transport_http:/usr/local/Axis/libs/libaxis_LibWWWTransport.so
For more information on LibWWW please see http://www.w3.org/Library/User/
Issues:
The thread test in tests/client/threadSafe fails with this implementation.
Bit of surfing lead me to http://www.w3.org/Library/User/Architecture/Events.html,
which says “LibWWW is not posix thread safe but it uses a 'pseudo-thread'
model based on non-blocking sockets and interleaved IO.”
Bit of research is needed to figure out how to make this implementation
thread safe. It remains a TODO as of now.
- Samisa...