Hi Caroline, configure the roles like this:
<security-role> <role-name>user</role-name> </security-role> <security-role> <role-name>admin</role-name> </security-role>
Adam
On 10/09/2003 05:55 AM Nick Faiz wrote:
Hi Caroline,
Check out the DTD - <!ELEMENT security-role (description?, role-name)> .
Try having one role-name per security-role.
Also, ensure that your security role is positioned in the right place in your web.xml (again, look at the DTD).
Nick Faiz.
-----Original Message-----
From: Caroline Jen [mailto:[EMAIL PROTECTED] Sent: Thursday, 9 October 2003 1:53 PM
To: [EMAIL PROTECTED]
Subject: What Is Wrong With My web.xml File (Struts)
My Struts application worked well until I added security in the web.xml file. I got the error message shown below and I cannot spot any mistake with my eyes:
[QUOTE] 2003-10-08 23:33:25 Exception initializing TldLocationsCache: XML parsing error on file /WEB-INF/web.xml: (line 137, col 19): The content of element type "security-role" must match "(description?,role-name)". [/QUOTE]
and my web.xml file is: [CODE] <?xml version="1.0" encoding="ISO-8859-1"?> <!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>
<!-- Configuring Artimus -->
<servlet>
<servlet-name>artimus</servlet-name>
<servlet-class>org.apache.artimus.http.ArtimusServlet</servlet-class>
<!-- Our application properties -->
<init-param>
<param-name>default</param-name>
<param-value>resources/artimus.properties</param-value>
</init-param>
<!-- Our connection adaptor -->
<init-param>
<param-name>adaptor</param-name>
<param-value>org.apache.commons.scaffold.sql.PoolmanAdaptor</param-value>
</init-param>
<init-param>
<param-name>adaptor.key</param-name>
<param-value>jdbc-artimus</param-value>
</init-param>
<!-- Alternate adaptors
<init-param>
<param-name>adaptor</param-name>
<param-value>org.apache.commons.scaffold.sql.ServletAdaptor</param-value>
</init-param>
<init-param>
<param-name>adaptor.key</param-name>
<param-value>org.apache.struts.action.DATA_SOURCE</param-value>
</init-param>
<init-param>
<param-name>adaptor</param-name>
<param-value>org.apache.commons.scaffold.sql.ConnectionAdaptor</param-value>
</init-param>
<init-param>
<param-name>adaptor.key</param-name>
<param-value>jdbc/artimus</param-value>
</init-param>
-->
<!-- Our startup priority -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Standard Struts configuration -->
<servlet>
<servlet-name>action</servlet-name>
<!--
org.apache.struts.tiles.ActionComponentServlet -->
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>null</param-name>
<param-value>false</param-value>
</init-param>
<!-- Startup priority -->
<load-on-startup>2</load-on-startup>
</servlet>
<!-- servlet-mappings, welcome-file-list --> <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>
<!-- taglibs -->
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/lib/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/lib/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/lib/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/tiles</taglib-uri>
<taglib-location>/WEB-INF/lib/struts-tiles.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/request</taglib-uri>
<taglib-location>/WEB-INF/lib/request.tld</taglib-location>
</taglib>
<!-- Our secuity settings -->
<security-constraint>
<web-resource-collection>
<web-resource-name>Administrative</web-resource-name>
<!-- The URLs to protect -->
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<!-- The authorized users -->
<role-name>administrator</role-name>
<role-name>advisor</role-name>
<role-name>editor</role-name>
<role-name>contributor</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method> <form-login-config> <form-login-page>/signin/logon.jsp</form-login-page> <form-error-page>/signin/logon.jsp?error=true</form-error-page>
</form-login-config> </login-config>
<!-- Our authentification strategy --> <security-role> <description>Registered Members</description> <role-name>administrator</role-name> <role-name>advisor</role-name> <role-name>editor</role-name> <role-name>contributor</role-name> </security-role> // line 137 is here
</web-app> [/CODE]
__________________________________ Do you Yahoo!? The New Yahoo! Shopping - with improved product search http://shopping.yahoo.com
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- struts 1.1 + tomcat 5.0.12 + java 1.4.2 Linux 2.4.20 RH9
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]