richter 01/11/01 20:23:36 Modified: . Embperl.pod EmbperlD.pod INSTALL.pod Log: Session management docu updates Revision Changes Path 1.75 +14 -2 embperl/Embperl.pod Index: Embperl.pod =================================================================== RCS file: /home/cvs/embperl/Embperl.pod,v retrieving revision 1.74 retrieving revision 1.75 diff -u -r1.74 -r1.75 --- Embperl.pod 2001/08/15 19:21:03 1.74 +++ Embperl.pod 2001/11/02 04:23:36 1.75 @@ -1066,7 +1066,9 @@ =head2 EMBPERL_SESSION_HANDLER_CLASS (1.3b3 and higher) -Set the class that performs the Embperl session handling. Default is +Set the class that performs the Embperl session handling. Default until +1.3.3 was C<HTML::Embperl::Session>, starting with 1.3.4 it is +C<Apache::SessionX>. To get the old session behaviour set it to C<HTML::Embperl::Session>. You can overwrite I<HTML::Embperl::Session> and specify the name of your class within this variable. This gives you the possibility to implement your own session handling. @@ -1946,8 +1948,18 @@ for you. You can store any data in the L<%mdat> hash and if any request comes to the same Embperl document, you will see the same values in that hash again. +Session handling has changed from 1.3.3 to 1.3.4 and 2.0b3 to 2.0b4. You must either +install Apache::SessionX or set + + PerlSetEnv EMBPERL_SESSION_HANDLER_CLASS "HTML::Embperl::Session" + +to get the old behaviour. If you have Apache::SessionX installed, you +don't have to make addtional configuration, otherwise you must do the following +things. You are also able to override the Apache::SessionX defaults, by +using the following parameters: + To configure I<Embperl> to do session management for you, you must -have installed I<Apache::Session> (B<1.00 or higher>) and tell Embperl which +have installed I<Apache::Session> (B<1.53 or higher>) and tell Embperl which storage and locker classes you would like to use for I<Apache::Session>. This is done by setting the environment variable C<EMBPERL_SESSION_CLASSES>. 1.47 +17 -4 embperl/EmbperlD.pod Index: EmbperlD.pod =================================================================== RCS file: /home/cvs/embperl/EmbperlD.pod,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- EmbperlD.pod 2001/08/15 19:21:03 1.46 +++ EmbperlD.pod 2001/11/02 04:23:36 1.47 @@ -989,9 +989,11 @@ =head2 EMBPERL_SESSION_HANDLER_CLASS (ab 1.3b3) -Bestimmt die Klasse die das Session Handling f�r I<Embperl durchf�hrt>. -Default ist C<HTML::Embperl::Session>. Sie k�nnen eine eigene Klasse von -I<HTML::Embperl::Session> ableiten und diese hier angeben um Ihr eigenes +Bestimmt die Klasse die das Session Handling f�r I<Embperl> durchf�hrt. +Default war bis 1.3.3 I<HTML::Embperl::Session>. Ab 1.3.4 ist der Default +I<Apache::SessionX>. Um das alte Sessionhandling zu verwenden, k�nnen Sie den +Parameter auf I<HTML::Embperl::Session> setzen. Sie k�nnen eine eigene Klasse von +I<Apache::SessionX> ableiten und diese hier angeben um Ihr eigenes Session Handling zu implementieren. =head2 EMBPERL_COOKIE_NAME (ab 1.2b4) @@ -1858,7 +1860,18 @@ oder sogar Rechnergrenzen hinweg m�glich. I<Embperl> bedient sich dazu des Perlmodules I<Apache::Session>. -Um das Session Management zu aktivieren mu� I<Apache::Session> (Version 1.00 +Ab 1.3.4 verwendet I<Embperl> I<Apache::SessionX> f�r das Sessing handling. +Dadurch ist keine weitere Konfiguration mehr n�tig. Wenn Sie das alte +Sessionhandling (ohne I<Apache::SessionX>) beibehalten wollen, m�ssen +Sie + + PerlSetEnv EMBPERL_SESSION_HANDLER_CLASS HTML::Embperl::Session + +in Ihrer httpd.conf eintragen und folgende Parameter konfigurieren. Sie +k�nnen die folgenden Parameter auch zum �berschreiben der +Standardkonfiguration von I<Apache::SessionX> benutzen. + +Um das Session Management zu aktivieren mu� I<Apache::Session> (Version 1.53 oder h�her) installiert sein. Au�erdem m�ssen Sie I<Embperl>, via C<EMBPERL_SESSION_CLASSES>, mitteilen, welcher Speicher- und Lockingmechanismus genutzt werden soll, ggf. m�ssen Sie 1.21 +118 -6 embperl/INSTALL.pod Index: INSTALL.pod =================================================================== RCS file: /home/cvs/embperl/INSTALL.pod,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- INSTALL.pod 2001/05/15 06:46:47 1.20 +++ INSTALL.pod 2001/11/02 04:23:36 1.21 @@ -21,9 +21,8 @@ - B<make install> -B<NOTE 1:> (only Embperl-1.2b1 or higher) For using session handling you need -Apache::Session-1.00 or higher. If possible use Apache::Session 1.52 or higher. -Starting with Embperl 1.3b7 Apache::Session 0.17 is B<NOT> supported anymore. +B<NOTE 1:> For using session handling you need +Apache::Session 1.53 and Apache::SessionX 2.00b3 or higher. B<NOTE 2:> I<Embperl> runs without additional Perl modules, but the C<make test> needs the following modules to work: @@ -69,7 +68,37 @@ will show you a list of available option. Most of them you will never need, they are mainly nesseccary for debugging I<Embperl> itself. +=head2 XML and XSLT support +Starting with Embperl 2.0b4 it has a build in XSLT support. You can either +use the Apache Xerces-C and Xalan-C and/or Gnome libxml and libxslt. +Embperl is currently tested with Xalan 1.2 and libxslt 1.0.4. + +To install Xalan, download the Xalan archive for your OS from +http://xml.apache.org/dist/xalan-c/ + +For Linux it is Xalan-C_1_2-linux.tar.gz +For Solaris it is Xalan-C_1_2-solaris.tar.gz + +Extract the archive and make the shared libraries available to the system, +either by adding the directories to LD_LIBRARY_PATH or by coping them to +a library directory, e.g. /usr/local/lib and run ldconfig -v. The two +ncessary libraries can be found under + + xerces-c1_5_1-linux/lib/libxerces-c1_5_1.so + xml-xalan/c/lib/libxalan-c1_2.so + +Now you only have to enter the basepath of where you have extraced the +Xalan archive, when Makefile.PL asks you for it and proceed as normal. + +B<NOTE:> For special hints on compiling XALAN see below + +To use libxml/libxslt, download them from http://xmlsoft.org/ and install +them on your system. Makefile.PL will automaticly detect the installed +libraries and linked them into Embperl. (you have to make sure +that xml2-config and xslt-config can be found and run by Makefile.PL) + + =head2 Debian packages The Debian packages are maintained by Angus Lees. Here are his @@ -161,9 +190,8 @@ B<nmake install> -B<NOTE 1:> (only Embperl-1.2b1 or higher) For using session handling you need -Apache::Session-1.00 or higher. If possible use Apache::Session 1.52 or higher. -Starting with Embperl 1.3b7 Apache::Session 0.17 is B<NOT> supported anymore. +B<NOTE 1:> For using session handling you need +Apache::Session 1.53 and Apache::SessionX 2.00b3 or higher. B<NOTE 2:> I<Embperl> runs without additional Perl modules, but the C<make test> needs the following modules to work: @@ -246,6 +274,21 @@ nmake install +=head2 WIN 32: Install Apache and non Apache version on the same system + +Unlike Unix, Windows loads any needed DLL (dynamic libraries) at startup. This +causes trouble when Embperl is compiled for use with Apache and mod_perl, but +is used outside of Apache, because Windows tries to load F<ApacheCore.dll>. +To solve this problem Embperl 1.3.4+ can install a Apache and a non Apache +version. To do this first install the Apache version as decribed above +(includeing the C<nmake install>) . +Afterwards rerun Makefile.PL, when ask for mod_perl support answer no, now +Makefile.PL detects that a mod_perl version was already compiled and asks +if you what a separte non Apache version. Just say yes here and compile +and install this version too. When Embperl is loaded it detects if runs in- +or outside of Apache and loads the correct library. + + =head2 How to continue You can view the documentation at any time from the Embperl source directory, @@ -292,4 +335,73 @@ or you can view it online on http://www.ecos.de/embperl/ + +=head2 Compiling XALAN + +Normaly you should be fine with the binary packages that are provided for +XALAN. If you want to compile XALAN from the sources there should be normaly +no problem as long as you use GNU gcc on Unix or Microsoft VC++ on Windows. + +Here are some hints how to compile XALAN 1.2 with the sun C++ 5.1: + +=over 4 + +=item * Get the sources for XERCES and XALAN + +=item * Untar the files + +Use GNU tar, solaris tar doesn't work! GNU tar can be found at +ftp://ftp.mcc.ac.uk/pub/gnu/tar/tar-1.13.tar.gz + +=item * Set the root directories + + export XERCESCROOT=/path/to/xerces-c-src1_5_1 + export XALANCROOT=/path/to/xml-xalan/c + +=item * Compile XERCES + + cd xerces-c-src1_5_1/src + sh runConfigure -p solaris -c cc -x CC + make + +=item * Patch XALAN + +There must be one typecast inserted in the following three files: + + + "c/src/XSLT/ExtensionFunctionHandler.cpp", line 156 + 156c156 + < return m_functions.find(function) != m_functions.end(); + --- + > return StringSetType::const_iterator(m_functions.find(function)) != m_functions.end(); + + "c/src/XSLT/ExtensionNSHandler.cpp", line 200 + 200c200 + < return (m_elements.find(element) != m_elements.end()); + --- + > return (ExtensionSetType::const_iterator(m_elements.find(element)) != m_elements.end()); + + "c/src/XSLT/NamespacesHandler.cpp", line 366 + 366c366 + < || m_extensionNamespaceURIs.find(theURI) != m_extensionNamespaceURIs.end() + --- + > || ExtensionNamespaceURISetType::const_iterator(m_extensionNamespaceURIs.find(theURI)) != m_extensionNamespaceURIs.end() + + + +=item * Compile XALAN + + cd xml-xalan/c/src + sh runConfigure -p solaris -c cc -x CC -z "-D__GNUC__" + make + +B<NOTE:> I found that only the above parameters to configure work. +Don't worry that __GNUC__ is defined. It works with sun C++ 5.1. +When using sun C++ 5.1 you don't need the STLPort template library. + +=item * Make the libraries available + + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/xerces-c-src1_5_1/lib:/path/to/xml-xalan/c/lib + +=item * Now you can run Embperl's Makefile.PL as described above
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
