<?xml version="1.0"?>
<!--
    Copyright 2004 The Apache Software Foundation
  
   Licensed 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.
-->
<!-- $Id$ -->
<!DOCTYPE application PUBLIC 
  "-//Apache Software Foundation//Tapestry Specification 3.0//EN" 
  "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
	
<application name="Invalid Page Name">
	
  <service name="home" class="tutorial.workbench.WorkbenchHomeService"/>
  <service name="chart" class="tutorial.workbench.chart.ChartService"/>
  <service name="in$valid" class="it.just.doesnt.matter.Service"/>
	
  <page name="Home" specification-path="/tutorial/workbench/Home.jwc"/>
  
</application>
