<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">

<!--
	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.
-->
<web-app>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>WEB-INF/beans.xml</param-value>
  </context-param>

  <context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>/WEB-INF/classes/log4j.properties</param-value>
  </context-param>

  <listener>
    <listener-class>
      org.springframework.web.context.ContextLoaderListener
		</listener-class>
		 <!-- this class setups the encryption key for the session-->
    <listener-class>org.apache.juddi.adminconsole.StartupServlet</listener-class>
    
  </listener>

  <servlet>
    <servlet-name>CXFServlet</servlet-name>
    <display-name>CXF Servlet</display-name>
    <servlet-class>
      org.apache.cxf.transport.servlet.CXFServlet
		</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  
   <servlet>
    <servlet-name>RegistryServlet</servlet-name>
    <display-name>Registry Servlet</display-name>
    <servlet-class>
      org.apache.juddi.servlets.RegistryServlet
		</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  
   <servlet>
    <servlet-name>NotifyServlet</servlet-name>
    <display-name>Notify Servlet</display-name>
    <servlet-class>
      org.apache.juddi.servlets.NotifyServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  
  <servlet-mapping>
    <servlet-name>CXFServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>
  
  <servlet-mapping>
  	<servlet-name>NotifyServlet</servlet-name>
  	<url-pattern>/notify/*</url-pattern>
  </servlet-mapping>
 
  <resource-ref>
      <description>jUDDI DataSource</description>
      <res-ref-name>jdbc/juddiDB</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
      <res-sharing-scope>Shareable</res-sharing-scope>
  </resource-ref>
  <security-constraint>
      <display-name>jUDDI Admin content</display-name>
      <web-resource-collection>
          <web-resource-name>admin</web-resource-name>
          <url-pattern>/admin/*</url-pattern>
          
          
      </web-resource-collection>
      <auth-constraint>
          <role-name>uddiadmin</role-name>
      </auth-constraint>
      <!-- uncomment to require SSL <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
      </user-data-constraint>
      -->
  </security-constraint>
    <login-config> 
	<auth-method>BASIC</auth-method> 
	<!-- you should consider NOT using BASIC is favor of something more secure, see your web app servers documentation for details -->
	<realm-name>Apache jUDDI - Make sure you're using HTTPS!</realm-name> 
  </login-config> 
  <security-role>
      <role-name>uddiadmin</role-name>
  </security-role>
  

</web-app>
