<?xml version="1.0"?>
<!--
    $Id: installation-ip.xml 481833 2006-12-03 17:32:52Z niallp $

    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at
   
         http://www.apache.org/licenses/LICENSE-2.0
   
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
<document url="installation-ip.html">
    <properties>
        <title>The Struts Framework Project - Installation - iPlanet</title>
    </properties>
    <body>
        <section name="6.2 Installation" href="installation">
            <subsection name="Installing Struts with your servlet container"
                        href="Containers">
                <h4 id="ipws60">iPlanet Application Server 6.0</h4>
                <p>Service Pack 2 is recommended.</p>
                <p>NOTE: At present, the Struts example application still uses
                    a non-Serializable
                    servlet context attribute, and will not run in an
                    environment that requires them,
                    like iPlanet Application Server.</p>
                <h4 id="ipws42">iPlanet Web Server 4.2</h4>
                <p>Here are the issues I ran into while moving my struts based
                    application from
                    Tomcat (supports WebApps and WAR) to iWS 4.1 (does
                    <strong>NOT</strong>
                    support Webapps
                    and WAR).
                </p>
                <p>Webapps and WAR will be supported in iWS 5.0, as mentioned
                    in iWS5.0 roadmap.</p>
                <h4>Classpath issues.</h4>
                <p>This s pretty straightforward. Since there is no notion of
                    <code>WEB-INF/lib</code>
                    and
                    <code>WEB-INF/classes</code>
                    the classpath has to be explicitly set in
                    <code>$SERVER_ROOT/config/jvm12.conf</code>
                    .
                </p>
                <h4>Context relative paths</h4>
                <p>All URLs should be visible from the document root. In my
                    case I just created
                    a symbolic link from
                    <code>$DOCROOT/myapp</code>
                    to
                    <code>webapps/myapp</code>
                    .
                </p>
                <h4>Extension mapping</h4>
                <p>The config file
                    <code>$SERVER_ROOT/config/rules.properties</code>
                    has a similar mechanism
                    as in web.xml.
                </p>
                <p>I have this in my
                    <code>rules.properties</code>
                    which forwards all urls ending with &quot;do&quot;
                    to the servlet whose logical name is action.
                </p>
                <pre>####
                    @.*[.]do$=action
                    ####</pre>
                <hr/>
                <p>Back to
                    <a href="installation.html#Containers">Installation</a>
                </p>
            </subsection>
        </section>
    </body>
</document>
