You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-user@jakarta.apache.org by Ahmed Hammad <ah...@harf.com> on 2001/12/02 08:51:21 UTC
RE: Tomcat 4.0 and Slide ream integration
It dose not work, I already tried all such tricks, I am trying to debug
tomcat, adding some log statements and recompile to know more information
about the problem.
Thanks
-----Original Message-----
From: Jason Harrop [mailto:jason@xn.com.au]
Sent: Friday, 30 November , 2001 3:07 PM
To: Slide Users List
Subject: Re: Tomcat 4.0 and Slide real integration
Try putting slide-catalinawrapper.jar in TC's server/lib.
Ahmed Hammad wrote:
> I have tomcat 4.0.1, Slide 1.0.16 and JDK 1.3.1 on Windows 2000
>
> I am trying to integrate Slide realm authentication with tomcat 4.0, i
> copied all required jar and trying to change server.xml to be:
>
> <Realm className="wrappers.catalina.SlideRealm" />
> instead of
> <Realm className="org.apache.catalina.realm.MemoryRealm">
>
> But I always have this error:
>
>
> C:\jakarta-tomcat-4.0.1\bin>catalina run
> Using CATALINA_BASE: ..
> Using CATALINA_HOME: ..
> Using CLASSPATH: ..\bin\bootstrap.jar;c:\jdk1.3\lib\tools.jar
> Using JAVA_HOME: c:\jdk1.3
> Exception during startup processing
> java.lang.reflect.InvocationTargetException:
java.lang.NoClassDefFoundError:
> org/apache/catalina/realm/RealmBase
> at java.lang.ClassLoader.defineClass0(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
> at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> at
>
org.apache.catalina.loader.StandardClassLoader.findClass(StandardClassLoader
> .java:671)
> at
>
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:1090)
> at
>
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:989)
> at
>
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:1073)
> at
>
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:989)
> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:120)
> at
> org.apache.catalina.util.xml.ObjectCreate.start(XmlMapper.java:616)
> at
> org.apache.catalina.util.xml.XmlMapper.matchStart(XmlMapper.java:412)
> at
> org.apache.catalina.util.xml.XmlMapper.startElement(XmlMapper.java:91)
> at
>
org.xml.sax.helpers.XMLReaderAdapter.startElement(XMLReaderAdapter.java:329)
> at
> org.apache.xerces.parsers.SAXParser.startElement(SAXParser.java:1376)
> at
>
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidat
> or.java:1214)
> at
>
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanne
> r.java:1806)
> at
>
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XM
> LDocumentScanner.java:1182)
> at
>
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
> java:381)
> at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1081)
> at
> org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:290)
> at
> org.apache.catalina.util.xml.XmlMapper.readXml(XmlMapper.java:228)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:725)
> at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
> at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> at java.lang.reflect.Method.invoke(Native Method)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)
>
> -----
>
> It seems like tomcat unable to find the wrapper class,
> wrappers.catalina.SlideRealm, but I already copied all jars to common\lib
> including slide-catalinawrapper.jar
>
>
>
> Thanks for your time
>
> Hamad
>
>
>
>
>
> ------------------------------------------------------------------------
>
> <!-- Example Server Configuration File -->
> <!-- Note that component elements are nested corresponding to their
> parent-child relationships with each other -->
>
> <!-- A "Server" is a singleton element that represents the entire JVM,
> which may contain one or more "Service" instances. The Server
> listens for a shutdown command on the indicated port.
>
> Note: A "Server" is not itself a "Container", so you may not
> define subcomponents such as "Valves" or "Loggers" at this level.
> -->
>
> <Server port="8005" shutdown="SHUTDOWN" debug="0">
>
>
> <!-- A "Service" is a collection of one or more "Connectors" that share
> a single "Container" (and therefore the web applications visible
> within that Container). Normally, that Container is an "Engine",
> but this is not required.
>
> Note: A "Service" is not itself a "Container", so you may not
> define subcomponents such as "Valves" or "Loggers" at this level.
> -->
>
> <!-- Define the Tomcat Stand-Alone Service -->
> <Service name="Tomcat-Standalone">
>
> <!-- A "Connector" represents an endpoint by which requests are
received
> and responses are returned. Each Connector passes requests on to
the
> associated "Container" (normally an Engine) for processing.
>
> By default, a non-SSL HTTP/1.1 Connector is established on port
8080.
> You can also enable an SSL HTTP/1.1 Connector on port 8443 by
> following the instructions below and uncommenting the second
Connector
> entry. SSL support requires the following steps (see the SSL
Config
> HOWTO in the Tomcat 4.0 documentation bundle for more detailed
> instructions):
> * Download and install JSSE 1.0.2 or later, and put the JAR files
> into "$JAVA_HOME/jre/lib/ext".
> * Execute:
> %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
(Windows)
> $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
(Unix)
> with a password value of "changeit" for both the certificate
and
> the keystore itself.
>
> By default, DNS lookups are enabled when a web application calls
> request.getRemoteHost(). This can have an adverse impact on
> performance, so you can disable it by setting the
> "enableLookups" attribute to "false". When DNS lookups are
disabled,
> request.getRemoteHost() will return the String version of the
> IP address of the remote client.
> -->
>
> <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
> <Connector
className="org.apache.catalina.connector.http.HttpConnector"
> port="8080" minProcessors="5" maxProcessors="75"
> enableLookups="true" redirectPort="8443"
> acceptCount="10" debug="0" connectionTimeout="60000"/>
> <!-- Note : To disable connection timeouts, set connectionTimeout
value
> to -1 -->
>
> <!-- Define an SSL HTTP/1.1 Connector on port 8443 -->
> <!--
> <Connector
className="org.apache.catalina.connector.http.HttpConnector"
> port="8443" minProcessors="5" maxProcessors="75"
> enableLookups="true"
> acceptCount="10" debug="0" scheme="https" secure="true">
> <Factory className="org.apache.catalina.net.SSLServerSocketFactory"
> clientAuth="false" protocol="TLS"/>
> </Connector>
> -->
>
> <!-- Define an AJP 1.3 Connector on port 8009 -->
> <!--
> <Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
> port="8009" minProcessors="5" maxProcessors="75"
> acceptCount="10" debug="0"/>
> -->
>
> <!-- Define a Proxied HTTP/1.1 Connector on port 8081 -->
> <!-- See proxy documentation for more information about using
this. -->
> <!--
> <Connector
className="org.apache.catalina.connector.http.HttpConnector"
> port="8081" minProcessors="5" maxProcessors="75"
> enableLookups="true"
> acceptCount="10" debug="0" connectionTimeout="60000"
> proxyPort="80"/>
> -->
>
> <!-- Define a non-SSL HTTP/1.0 Test Connector on port 8082 -->
> <!--
> <Connector
className="org.apache.catalina.connector.http10.HttpConnector"
> port="8082" minProcessors="5" maxProcessors="75"
> enableLookups="true" redirectPort="8443"
> acceptCount="10" debug="0"/>
> -->
>
> <!-- An Engine represents the entry point (within Catalina) that
processes
> every request. The Engine implementation for Tomcat stand alone
> analyzes the HTTP headers included with the request, and passes
them
> on to the appropriate Host (virtual host). -->
>
> <!-- Define the top level container in our container hierarchy -->
> <Engine name="Standalone" defaultHost="localhost" debug="0">
>
> <!-- The request dumper valve dumps useful debugging information
about
> the request headers and cookies that were received, and the
response
> headers and cookies that were sent, for all requests received
by
> this instance of Tomcat. If you care only about requests to a
> particular virtual host, or a particular application, nest this
> element inside the corresponding <Host> or <Context> entry
instead.
>
> For a similar mechanism that is portable to all Servlet 2.3
> containers, check out the "RequestDumperFilter" Filter in the
> example application (the source for this filter may be found in
> "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
>
> Request dumping is disabled by default. Uncomment the
following
> element to enable it. -->
> <!--
> <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
> -->
>
> <!-- Global logger unless overridden at lower levels -->
> <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="catalina_log." suffix=".txt"
> timestamp="true"/>
>
> <!-- Because this Realm is here, an instance will be shared
globally -->
>
> <!--Realm className="org.apache.catalina.realm.MemoryRealm" /-->
>
> <Realm className="wrappers.catalina.SlideRealm" />
>
> <!-- Replace the above Realm with one of the following to get a
Realm
> stored in a database and accessed via JDBC -->
>
> <!--
> <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
> driverName="org.gjt.mm.mysql.Driver"
>
connectionURL="jdbc:mysql://localhost/authority?user=test;password=test"
> userTable="users" userNameCol="user_name"
userCredCol="user_pass"
> userRoleTable="user_roles" roleNameCol="role_name" />
> -->
>
> <!--
> <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
> driverName="oracle.jdbc.driver.OracleDriver"
>
connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL?user=scott;password=tige
r"
> userTable="users" userNameCol="user_name"
userCredCol="user_pass"
> userRoleTable="user_roles" roleNameCol="role_name" />
> -->
>
> <!--
> <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
> driverName="sun.jdbc.odbc.JdbcOdbcDriver"
> connectionURL="jdbc:odbc:CATALINA"
> userTable="users" userNameCol="user_name"
userCredCol="user_pass"
> userRoleTable="user_roles" roleNameCol="role_name" />
> -->
>
> <!-- Define the default virtual host -->
> <Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true">
>
> <!-- Normally, users must authenticate themselves to each web app
> individually. Uncomment the following entry if you would
like
> a user to be authenticated the first time they encounter a
> resource protected by a security constraint, and then have
that
> user identity maintained across *all* web applications
contained
> in this virtual host. -->
> <!--
> <Valve className="org.apache.catalina.authenticator.SingleSignOn"
> debug="0"/>
> -->
>
> <!-- Access log processes all requests for this virtual host. By
> default, log files are created in the "logs" directory
relative to
> $CATALINA_HOME. If you wish, you can specify a different
> directory with the "directory" attribute. Specify either a
relative
> (to $CATALINA_HOME) or absolute path to the desired
directory.
> -->
> <Valve className="org.apache.catalina.valves.AccessLogValve"
> directory="logs" prefix="localhost_access_log."
suffix=".txt"
> pattern="common"/>
>
> <!-- Logger shared by all Contexts related to this virtual host.
By
> default (when using FileLogger), log files are created in the
"logs"
> directory relative to $CATALINA_HOME. If you wish, you can
specify
> a different directory with the "directory" attribute.
Specify either a
> relative (to $CATALINA_HOME) or absolute path to the desired
> directory.-->
> <Logger className="org.apache.catalina.logger.FileLogger"
> directory="logs" prefix="localhost_log." suffix=".txt"
> timestamp="true"/>
>
> <!-- Define properties for each web application. This is only
needed
> if you want to set non-default properties, or have web
application
> document roots in places other than the virtual host's
appBase
> directory. -->
>
> <!-- Tomcat Root Context -->
> <Context path="" docBase="ROOT" debug="0"/>
>
>
>
> <!-- Here I am going to define context for slide for better
integration -->
> <!-- wrappers.catalina.SlideRealm -->
>
>
>
> <!-- Tomcat Manager Context -->
> <Context path="/manager" docBase="manager"
> debug="0" privileged="true"/>
>
> <!-- Tomcat Examples Context -->
> <Context path="/examples" docBase="examples" debug="0"
> reloadable="true">
> <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="localhost_examples_log." suffix=".txt"
> timestamp="true"/>
> <Ejb name="ejb/EmplRecord" type="Entity"
> home="com.wombat.empl.EmployeeRecordHome"
> remote="com.wombat.empl.EmployeeRecord"/>
> <!-- PersistentManager: Uncomment the section below to test
Persistent
> Sessions.
>
> saveOnRestart: If true, all active sessions will be saved
> to the Store when Catalina is shutdown, regardless of
> other settings. All Sessions found in the Store will be
> loaded on startup. Sessions past their expiration are
> ignored in both cases.
> maxActiveSessions: If 0 or greater, having too many active
> sessions will result in some being swapped out.
minIdleSwap
> limits this. -1 means unlimited sessions are allowed.
> 0 means sessions will almost always be swapped out after
> use - this will be noticeably slow for your users.
> minIdleSwap: Sessions must be idle for at least this long
> (in seconds) before they will be swapped out due to
> maxActiveSessions. This avoids thrashing when the site is
> highly active. -1 or 0 means there is no minimum -
sessions
> can be swapped out at any time.
> maxIdleSwap: Sessions will be swapped out if idle for this
> long (in seconds). If minIdleSwap is higher, then it will
> override this. This isn't exact: it is checked
periodically.
> -1 means sessions won't be swapped out for this reason,
> although they may be swapped out for maxActiveSessions.
> If set to >= 0, guarantees that all sessions found in the
> Store will be loaded on startup.
> maxIdleBackup: Sessions will be backed up (saved to the
Store,
> but left in active memory) if idle for this long (in
seconds),
> and all sessions found in the Store will be loaded on
startup.
> If set to -1 sessions will not be backed up, 0 means they
> should be backed up shortly after being used.
>
> To clear sessions from the Store, set maxActiveSessions,
maxIdleSwap,
> and minIdleBackup all to -1, saveOnRestart to false, then
restart
> Catalina.
> -->
> <!--
> <Manager
className="org.apache.catalina.session.PersistentManager"
> debug="0"
> saveOnRestart="true"
> maxActiveSessions="-1"
> minIdleSwap="-1"
> maxIdleSwap="-1"
> maxIdleBackup="-1">
> <Store className="org.apache.catalina.session.FileStore"/>
> </Manager>
> -->
> <Environment name="maxExemptions" type="java.lang.Integer"
> value="15"/>
> <Parameter name="context.param.name" value="context.param.value"
> override="false"/>
> <Resource name="jdbc/EmployeeAppDb" auth="SERVLET"
> type="javax.sql.DataSource"/>
> <ResourceParams name="jdbc/EmployeeAppDb">
> <parameter><name>user</name><value>sa</value></parameter>
> <parameter><name>password</name><value></value></parameter>
> <parameter><name>driverClassName</name>
> <value>org.hsql.jdbcDriver</value></parameter>
> <parameter><name>driverName</name>
> <value>jdbc:HypersonicSQL:database</value></parameter>
> </ResourceParams>
> <Resource name="mail/Session" auth="Container"
> type="javax.mail.Session"/>
> <ResourceParams name="mail/Session">
> <parameter>
> <name>mail.smtp.host</name>
> <value>localhost</value>
> </parameter>
> </ResourceParams>
> </Context>
>
> </Host>
>
> </Engine>
>
> </Service>
>
> <!-- ==========Here is another service to connect with
Apache=============== -->
>
> <!-- The MOD_WEBAPP connector is used to connect Apache 1.3 with Tomcat
4.0
> as its servlet container. Please read the README.txt file coming
with
> the WebApp Module distribution on how to build it.
> (Or check out the "jakarta-tomcat-connectors/webapp" CVS
repository)
>
> To configure the Apache side, you must ensure that you have the
> "ServerName" and "Port" directives defined in "httpd.conf". Then,
> lines like these to the bottom of your "httpd.conf" file:
>
> LoadModule webapp_module libexec/mod_webapp.so
> WebAppConnection warpConnection warp localhost:8008
> WebAppDeploy examples warpConnection /examples/
>
> The next time you restart Apache (after restarting Tomcat, if
needed)
> the connection will be established, and all applications you make
> visible via "WebAppDeploy" directives can be accessed through
Apache.
> -->
>
> <!-- Define an Apache-Connector Service WARP connector-->
> <Service name="Tomcat-Apache">
>
> <Connector
className="org.apache.catalina.connector.warp.WarpConnector"
> port="8008" minProcessors="5" maxProcessors="75"
> enableLookups="true"
> acceptCount="10" debug="0"/>
>
> <!-- Replace "localhost" with what your Apache "ServerName" is set
to -->
> <Engine className="org.apache.catalina.connector.warp.WarpEngine"
> name="Apache" debug="0" appBase="webapps">
>
> <!-- Global logger unless overridden at lower levels -->
> <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="apache_log." suffix=".txt"
> timestamp="true"/>
>
> <!-- Because this Realm is here, an instance will be shared
globally -->
> <!--Realm className="org.apache.catalina.realm.MemoryRealm" /-->
> <Realm className="wrappers.catalina.SlideRealm" />
>
> </Engine>
>
> </Service>
>
> </Server
>
>>
>>------------------------------------------------------------------------
>>
>><?xml version="1.0"?>
>>
>><slide logger="org.apache.slide.util.logger.SimpleLogger" logger-level="7"
default="slide">
>>
>><!--
>>logger
>>~~~~~~
>>org.apache.slide.util.logger.SimpleLogger
>> default logger with 1 log level
>>log4j.Log4jLogger
>> logger with fine granularity
>> see http://jakarta.apache.org/log4j/
>>
>>logger-level
>>~~~~~~~~~~~~
>>0 EMERGENCY
>>1 CRITICAL
>>2 ERROR
>>4 WARNING
>>6 INFO
>>7 DEBUG
>>-->
>>
>> <namespace name="slide">
>><!-- ### Memory Configuration ###
>> The following memory configuration uses the MemoryDescriptorsStore
>> for node,security,locks and revisions. For content the
FileContentStore
>> is used. Content is reset before start.
>>-->
>> <definition>
>> <store name="memory">
>> <nodestore
classname="slidestore.reference.MemoryDescriptorsStore">
>> </nodestore>
>> <securitystore>
>> <reference store="nodestore" />
>> </securitystore>
>> <lockstore>
>> <reference store="nodestore" />
>> </lockstore>
>> <revisiondescriptorsstore>
>> <reference store="nodestore" />
>> </revisiondescriptorsstore>
>> <revisiondescriptorstore>
>> <reference store="nodestore" />
>> </revisiondescriptorstore>
>> <contentstore classname="slidestore.reference.FileContentStore">
>> <parameter name="rootpath">contentstore</parameter>
>> <parameter name="version">false</parameter>
>> <parameter name="resetBeforeStarting">true</parameter>
>> </contentstore>
>> </store>
>> <scope match="/" store="memory" />
>> </definition>
>>
>>
>><!-- ### JDBC Configuration ###
>> The following jdbc sample configuration uses the hsql Database Engine
>> a relational database engine written in Java, for more info:
>> http://hsqldb.sourceforge.net/
>>-->
>><!--
>> <definition>
>> <store name="jdbc">
>> <nodestore classname="slidestore.reference.JDBCDescriptorsStore">
>> <parameter name="driver">org.hsqldb.jdbcDriver</parameter>
>> <parameter name="url">jdbc:hsqldb:slidestructure</parameter>
>> <parameter name="user">sa</parameter>
>> <parameter name="password"></parameter>
>> </nodestore>
>> <securitystore>
>> <reference store="nodestore" />
>> </securitystore>
>> <lockstore>
>> <reference store="nodestore" />
>> </lockstore>
>> <revisiondescriptorsstore>
>> <reference store="nodestore" />
>> </revisiondescriptorsstore>
>> <revisiondescriptorstore>
>> <reference store="nodestore" />
>> </revisiondescriptorstore>
>> <contentstore classname="slidestore.reference.JDBCContentStore">
>> <parameter name="driver">org.hsqldb.jdbcDriver</parameter>
>> <parameter name="url">jdbc:hsqldb:slidecontent</parameter>
>> <parameter name="user">sa</parameter>
>> <parameter name="password"></parameter>
>> </contentstore>
>> </store>
>> <scope match="/" store="jdbc" />
>> </definition>
>>-->
>>
>><!-- ### Mixed JDBC - Filesystem ###
>> stores: slidestore.reference.JDBCDescriptorsStore
>> slidestore.reference.FileContentStore
>> !!! set resetBeforeStarting parameter for FileContentStore to false
!!!
>>-->
>>
>><!-- ### Cloudscape configuration (embedded database) ###
>> stores: slidestore.cloudscape.CloudscapeDescriptorsStore
>> slidestore.cloudscape.CloudscapeContentStore
>> driver: COM.cloudscape.core.JDBCDriver
>> url: jdbc:cloudscape:slidestructure;create=true
>> jdbc:cloudscape:slidecontent;create=true
>>-->
>>
>><!-- ### Oracle configuration (thin driver) ###
>> stores: slidestore.reference.JDBCDescriptorsStore
>> slidestore.oracle.OracleContentStore
>> driver: oracle.jdbc.OracleDriver
>> url: jdbc:oracle:thin:@localhost:1521:slide
>>-->
>>
>> <configuration>
>>
>> <!-- Actions mapping -->
>> <default-action>/actions</default-action>
>> <read-object>/actions/read</read-object>
>> <create-object>/actions/write</create-object>
>> <remove-object>/actions/write</remove-object>
>> <grant-permission>/actions/manage</grant-permission>
>> <revoke-permission>/actions/manage</revoke-permission>
>> <read-permissions>/actions/manage</read-permissions>
>> <lock-object>/actions/write</lock-object>
>> <kill-lock>/actions/manage</kill-lock>
>> <read-locks>/actions/read</read-locks>
>> <read-revision-metadata>/actions/read</read-revision-metadata>
>> <create-revision-metadata>/actions/write</create-revision-metadata>
>> <modify-revision-metadata>/actions/write</modify-revision-metadata>
>> <remove-revision-metadata>/actions/write</remove-revision-metadata>
>> <read-revision-content>/actions/read</read-revision-content>
>> <create-revision-content>/actions/write</create-revision-content>
>> <modify-revision-content>/actions/write</modify-revision-content>
>> <remove-revision-content>/actions/write</remove-revision-content>
>>
>> <!-- Paths configuration -->
>> <userspath>/users</userspath>
>> <guestpath>guest</guestpath>
>> <filespath>/files</filespath>
>> <parameter name="dav">true</parameter>
>> <parameter name="standalone">true</parameter>
>>
>> <!-- Roles definition -->
>> <role name="root">slideroles.basic.RootRole</role>
>> <role name="user">slideroles.basic.UserRole</role>
>> <role name="guest">slideroles.basic.GuestRole</role>
>>
>> <!-- Users management -->
>> <auto-create-users>true</auto-create-users>
>>
>> <!-- Default properties mapping -->
>> <default-property name="foo" namespace="nsfoo/" value="bar"
>> role="user"/>
>> <default-property name="password" namespace="slide/" value=""
>> role="user"/>
>>
>> </configuration>
>>
>> <data>
>>
>> <objectnode classname="org.apache.slide.structure.SubjectNode"
uri="/">
>>
>> <!-- Subject can be:
>> self "~"
>> all "nobody"
>> user "/users/john"
>> group "+/users/groupA"
>> role "root"
>> -->
>>
>> <!-- Uncomment the following line to give all permissions to
>> principals have the root role -->
>> <permission action="/actions" subject="root"/>
>>
>> <permission action="/actions" subject="/users/root"/>
>> <permission action="/actions/read" subject="/users"
>> inheritable="false"/>
>> <permission action="/actions/read" subject="nobody"
>> inheritable="false"/>
>>
>> <!-- /users -->
>>
>> <objectnode classname="org.apache.slide.structure.SubjectNode"
>> uri="/users">
>>
>> <permission action="/actions" subject="~"/>
>> <permission action="/actions" subject="/users/guest"
>> inheritable="true" negative="true"/>
>> <permission action="/actions/read" subject="/users"
>> inheritable="false"/>
>>
>>
>> <!-- Permission group example -->
>>
>> <objectnode classname="org.apache.slide.structure.GroupNode"
>> uri="/users/groupA">
>> <objectnode classname="org.apache.slide.structure.LinkNode"
>> uri="/users/groupA/john" linkedUri="/users/john" />
>> <objectnode classname="org.apache.slide.structure.LinkNode"
>> uri="/users/groupA/root" linkedUri="/users/root" />
>> <objectnode
classname="org.apache.slide.structure.SubjectNode"
>> uri="/users/groupA/singleGroupMember" />
>> </objectnode>
>>
>> <!-- /users/root represents the administrator -->
>>
>> <objectnode classname="slideroles.basic.RootRoleImpl"
>> uri="/users/root">
>> <revision>
>> <property name="password">root</property>
>> </revision>
>> </objectnode>
>>
>> <!-- /users/john represents an authenticated user -->
>>
>> <objectnode classname="slideroles.basic.UserRoleImpl"
>> uri="/users/john">
>> <revision>
>> <property name="password">john</property>
>> </revision>
>> </objectnode>
>>
>> <!-- /users/guest represents an authenticated or unauthenticated
>> guest user -->
>>
>> <objectnode classname="slideroles.basic.GuestRoleImpl"
>> uri="/users/guest">
>> <revision>
>> <property name="password"></property>
>> </revision>
>> </objectnode>
>>
>><!-- AHM -->
>> <objectnode classname="slideroles.basic.RootRoleImpl"
>> uri="/users/ahm">
>> <revision>
>> <property name="password">allfree</property>
>> </revision>
>> </objectnode>
>>
>>
>> </objectnode>
>>
>> <objectnode classname="org.apache.slide.structure.ActionNode"
>> uri="/actions">
>>
>> <objectnode classname="org.apache.slide.structure.ActionNode"
>> uri="/actions/read"/>
>>
>> <objectnode classname="org.apache.slide.structure.ActionNode"
>> uri="/actions/write"/>
>>
>> <objectnode classname="org.apache.slide.structure.ActionNode"
>> uri="/actions/manage"/>
>>
>> </objectnode>
>>
>> <objectnode classname="org.apache.slide.structure.SubjectNode"
>> uri="/files">
>>
>> <!-- ### Give read/write/manage permission to guest ###
>> Uncomment the following line to give permission to do
>> all actions on /files to guest (unauthenticated users) -->
>> <!-- <permission action="/actions" subject="/users/guest"/> -->
>>
>> <permission action="/actions/manage" subject="/users/john"/>
>> <permission action="/actions/write" subject="+/users/groupA"/>
>> <permission action="/actions/read" subject="nobody"/>
>>
>> </objectnode>
>>
>> </objectnode>
>>
>> </data>
>>
>> </namespace>
>>
>></slide>
>>
>>
>>------------------------------------------------------------------------
>>
>>--
>>To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
>>For additional commands, e-mail:
<ma...@jakarta.apache.org>
>>
>> server.xml
>>
>> Content-Type:
>>
>> text/xml
>> Content-Encoding:
>>
>> quoted-printable
>>
>>
>> ------------------------------------------------------------------------
>> Domain.xml
>>
>> Content-Type:
>>
>> text/xml
>> Content-Encoding:
>>
>> quoted-printable
>>
>>
>> ------------------------------------------------------------------------
>> Part 1.4
>>
>> Content-Type:
>>
>> text/plain
>>
>>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>