Here is what I have that works:

in server.xml I have:


<?xml version="1.0"?>
<!DOCTYPE application-server PUBLIC "Orion Application Server Config"
"http://www.orionserver.com/dtds/application-server.dtd">

<application-server>
        <library path="../lib" />

        <rmi-config path="./rmi.xml" />
        <data-sources path="./data-sources.xml" />
        <principals path="./principals.xml" />

        <log>
                <file path="../log/server.log" />
        </log>

        <global-application name="bm" path="c:\\applications\\bm\\" />

        <global-web-app-config path="global-web-application.xml" />

        <web-site path="./default-web-site.xml" />
</application-server>



in default-web-site.xml I have:

<?xml version="1.0"?>
<!DOCTYPE web-site PUBLIC "Orion Web-site"
"http://www.orionserver.com/dtds/web-site.dtd">

<web-site host="[ALL]" port="80" display-name="WebSite">
        <default-web-app application="bm" name="www" />

        <access-log path="c:\\applications\\logs\\bm-access.log" />
</web-site>



in c:\applications\bm\META-INF\application.xml

<?xml version="1.0"?>
<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE
Application 1.2//EN"  "http://java.sun.com/j2ee/dtds/application_1_2.dtd">

<application>
        <display-name>bm</display-name>
        <module>
                <web>
                        <web-uri>www</web-uri>
                        <context-root>/</context-root>
                </web>
        </module>
        <security-role>
                <role-name>administrators</role-name>
        </security-role>
        <security-role>
                <role-name>users</role-name>
        </security-role>
</application>



In web.xml I have:

<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>
        <servlet>
                <servlet-name>action</servlet-name>
                <display-name>action</display-name>
                <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
                <init-param>
                        <param-name>mapping</param-name>
                        
<param-value>org.apache.struts.action.ActionMappingBase</param-value>
                </init-param>
                <init-param>
                        <param-name>application</param-name>
                        
<param-value>org.apache.struts.action.ActionResources</param-value>
                </init-param>
                <init-param>
                        <param-name>config</param-name>
                        <param-value>/action.xml</param-value>
                </init-param>
                <init-param>
                        <param-name>debug</param-name>
                        <param-value>0</param-value>
                </init-param>
        </servlet>
        <servlet-mapping>
                <servlet-name>action</servlet-name>
                <url-pattern>*.do</url-pattern>
        </servlet-mapping>
        <welcome-file-list>
                <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
        <taglib>
                <taglib-uri>/config/struts.tld</taglib-uri>
                <taglib-location>/WEB-INF/struts.tld</taglib-location>
        </taglib>
        <login-config>
                <auth-method>BASIC</auth-method>
        </login-config>
</web-app>



I put the action.xml file into the www root path, since Orion does not allow
it to be loaded from inside the WEB-INF. This is due to a descrepancy in the
understanding of the Servlet 2.2 WEB-INF dir spec. Until its resolved via
the Orion team, STRUTS will not work as it does on every other app server.
The workaround is as I have done..move it to somewhere above the WEB-INF
folder and indicate that in the web.xml file in the init-param for config.

I also put struts.tld in a /config folder off of the root, but I think
leaving it in WEB-INF is ok.

Hope this helps.



Reply via email to