old-www/HOWTO/MMBase-Inst-HOWTO/x634.html

785 lines
12 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>&#13;Installing MMBase
additional applications
</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="
MMBase Installation HOWTO
"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="
Connecting MMBase
to MySQL
using MySQL Connector/J
"
HREF="x572.html"><LINK
REL="NEXT"
TITLE="
Configuring initial
MMBase settings
"
HREF="x719.html"></HEAD
><BODY
CLASS="sect1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
><SPAN
CLASS="application"
>MMBase</SPAN
> Installation HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x572.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x719.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="sect1"
><H1
CLASS="sect1"
><A
NAME="AEN634"
></A
>9. Installing <SPAN
CLASS="application"
>MMBase</SPAN
>
additional applications</H1
><P
>&#13;With the release of version 1.7
<SPAN
CLASS="application"
>MMBase</SPAN
>
was reworked into a more modular structure.
The developers decided to take several modules
(i.e. <SPAN
CLASS="application"
>CloudContext Security</SPAN
>,
<SPAN
CLASS="application"
>Media</SPAN
>,
<SPAN
CLASS="application"
>Email</SPAN
>)
from the <SPAN
CLASS="application"
>MMBase</SPAN
> tree,
and make these available as separate entities.
However, at this moment
<SPAN
CLASS="application"
>MMBase</SPAN
>
doesn't have a module interface at all.
So, to use these additional applications,
the library and other files need to be placed into the installation tree
and the configuration needs to be added into the existing configuration files
by hand.
</P
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN644"
></A
>9.1. Installing
the <SPAN
CLASS="application"
>CloudContext Security</SPAN
> module</H2
><P
>&#13;&#62;From the <SPAN
CLASS="application"
>MMBase</SPAN
> website
(<A
HREF="http://www.mmbase.org"
TARGET="_top"
>www.mmbase.org</A
>):
<A
NAME="AEN650"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
><P
>&#13;<SPAN
CLASS="QUOTE"
>"<SPAN
CLASS="application"
>Cloud security</SPAN
>
uses the object <SPAN
CLASS="systemitem"
>mmbaseuser</SPAN
>
to store information used for authorisation and authentication of users.
The two main advantages of this security implementation are
that the user administration can be carried out by using a webbrowser
(instead of editing a file on the filesystem) and
that the users of your
<SPAN
CLASS="application"
>MMBase</SPAN
> installation
are available as objects in the cloud.
For instance, it is possible to create groups of users,
which are allowed to carry out certain tasks."</SPAN
>
</P
><P
>&#13;<SPAN
CLASS="QUOTE"
>"A context exists of a set of rights
which describe what you can do within this context
with an object of
<SPAN
CLASS="application"
>MMBase</SPAN
>.
For example you define read access to a the context
which is used by anonymous visitors of your site and
you can define a context with edit rights for registered users of your site.
"</SPAN
>
</P
></BLOCKQUOTE
>
</P
><P
>&#13;Move the library and other files of
the <SPAN
CLASS="application"
>CloudContext Security</SPAN
> module
into the <SPAN
CLASS="application"
>MMBase</SPAN
> installation tree:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
mv -i web-app/WEB-INF/lib/* \
/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/
mv -i web-app/WEB-INF/config/applications/* \
/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/applications/
mv -i web-app/WEB-INF/config/builders/* \
/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/builders/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Save the documentation files for later reference:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
mv -i web-app/README.txt web-app/README-PACKAGE.txt web-app/documentation web-app/src \
/usr/local/tomcat/webapps/mmbase-webapp/mmdocs/security/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Make sure all these new files are owned by
your <SPAN
CLASS="systemitem"
>tomcat</SPAN
> user as well:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
chown -R tomcat:tomcat /usr/local/tomcat/webapps/mmbase-webapp
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Disable the existing configuration
in the security configuration file
<TT
CLASS="filename"
>/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/security/security.xml</TT
>:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
&#60;!--
&#60;authentication class="org.mmbase.security.implementation.context.ContextAuthentication" url="context/config.xml" /&#62;
--&#62;
...
&#60;!--
&#60;authorization class="org.mmbase.security.implementation.context.ContextAuthorization" url="context/config.xml" /&#62;
--&#62;
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;And add
(from <TT
CLASS="filename"
>web-app/WEB-INF/config/security/security.xml</TT
>):
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
&#60;!--
Example security.xml to switch on Cloud Context Security.
No other configuration needed
(Cloud Context Security is configured in the cloud)
@version $Id: security.xml,v 1.1 2003/06/17 16:44:01 michiel Exp $
--&#62;
&#60;authentication class="org.mmbase.security.implementation.cloudcontext.Authenticate" url="" /&#62;
&#60;authorization class="org.mmbase.security.implementation.cloudcontext.Verify" url="" /&#62;
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;<DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;Make sure to include the configuration above before
the <TT
CLASS="classname"
>&#60;sharedsecret&#62;</TT
> statement,
or you will get an error like this:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
ERROR org.mmbase.util.XMLErrorHandler - security.xml line:71 column:12:
The content of element type "security" must match "(authentication,authorization,sharedsecret)".
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
></TD
></TR
></TABLE
></DIV
>
</P
></DIV
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN679"
></A
>9.2. Installing
the <SPAN
CLASS="application"
>Media</SPAN
> module</H2
><P
>&#13;&#60;TODO&#62;
</P
></DIV
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN683"
></A
>9.3. Installing
the <SPAN
CLASS="application"
>Email</SPAN
> module</H2
><P
>&#13;The <SPAN
CLASS="application"
>Email</SPAN
> module
makes it possible to send email
with <SPAN
CLASS="application"
>MMBase</SPAN
>,
using either <SPAN
CLASS="systemitem"
>SendMail</SPAN
>
or <SPAN
CLASS="systemitem"
>JMSendMail</SPAN
>.
</P
><P
>&#13;Move the library and other files of
the <SPAN
CLASS="application"
>Email</SPAN
> module
into the <SPAN
CLASS="application"
>MMBase</SPAN
> installation tree:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
mv -i web-app/WEB-INF/lib/* \
/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/lib/
mv -i web-app/WEB-INF/config/builders/* \
/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/builders/
mkdir /usr/local/tomcat/webapps/mmbase-webapp/email-examples/
cp -iR web-app/examples/* \
/usr/local/tomcat/webapps/mmbase-webapp/email-examples/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Save the documentation files for later reference:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
mkdir /usr/local/tomcat/webapps/mmbase-webapp/mmdocs/email/
mv -i web-app/README.txt web-app/README-PACKAGE.txt web-app/documentation web-app/src \
/usr/local/tomcat/webapps/mmbase-webapp/mmdocs/email/
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Make sure all these new files are owned by
your <SPAN
CLASS="systemitem"
>tomcat</SPAN
> user as well:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
chown -R tomcat:tomcat /usr/local/tomcat/webapps/mmbase-webapp
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Edit the email configuration file
<TT
CLASS="filename"
>/usr/local/tomcat/webapps/mmbase-webapp/WEB-INF/config/modules/sendmail.xml</TT
>
(from <TT
CLASS="filename"
>web-app/WEB-INF/config/modules/sendmail.xml</TT
>):
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
...
&#60;status&#62;active&#60;/status&#62;
...
&#60;classfile&#62;org.mmbase.applications.email.SendMail&#60;/classfile&#62;
...
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Add to <SPAN
CLASS="application"
>Tomcat</SPAN
>'s
root <TT
CLASS="classname"
>Context</TT
>
(in /usr/local/tomcat/conf/context.xml for Tomcat version 5,
in /usr/local/tomcat/conf/server.xml for Tomcat version 4)
(replace &#60;smtp.domain.tld&#62; with the adres of your
<SPAN
CLASS="systemitem"
><SPAN
CLASS="acronym"
>SMTP</SPAN
> server</SPAN
>):
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
Resource name="mail/Session" auth="Container"
type="javax.mail.Session"/&#62;
&#60;ResourceParams name="mail/Session"&#62;
&#60;parameter&#62;
&#60;name&#62;mail.smtp.host&#60;/name&#62;
&#60;value&#62;smtp.domain.tld&#60;/value&#62;
&#60;/parameter&#62;
&#60;/ResourceParams&#62;
&#60;ResourceLink name="linkToGlobalResource"
global="simpleValue"
type="java.lang.Integer"/&#62;
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;Failing to do this, results in a fatal error:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
FATAL org.mmbase.module.JMSendMail -
JMSendMail failure: Name mail is not bound in this Context
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
><P
>&#13;<DIV
CLASS="warning"
><P
></P
><TABLE
CLASS="warning"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/warning.gif"
HSPACE="5"
ALT="Warning"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;Installing the <SPAN
CLASS="application"
>Email</SPAN
> module
in <SPAN
CLASS="application"
>MMBase</SPAN
> version 1.7
running on <SPAN
CLASS="application"
>Tomcat</SPAN
> version 5
resulted in a fatal error:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;
FATAL org.mmbase.servlet.MMBaseStartThread -
Could not find the MMBase module!javax/mail/Session
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
></TD
></TR
></TABLE
></DIV
>
</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x572.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x719.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Connecting <SPAN
CLASS="application"
>MMBase</SPAN
>
to <SPAN
CLASS="application"
>MySQL</SPAN
>
using <SPAN
CLASS="systemitem"
>MySQL Connector/J</SPAN
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Configuring initial
<SPAN
CLASS="application"
>MMBase</SPAN
> settings</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>