culturecode-sunspot_solr 2.0.0.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. data/Gemfile +3 -0
  2. data/README.rdoc +24 -0
  3. data/bin/sunspot-installer +20 -0
  4. data/bin/sunspot-solr +80 -0
  5. data/lib/sunspot/solr/installer.rb +25 -0
  6. data/lib/sunspot/solr/installer/config_installer.rb +46 -0
  7. data/lib/sunspot/solr/installer/task_helper.rb +13 -0
  8. data/lib/sunspot/solr/java.rb +10 -0
  9. data/lib/sunspot/solr/railtie.rb +15 -0
  10. data/lib/sunspot/solr/server.rb +223 -0
  11. data/lib/sunspot/solr/tasks.rb +49 -0
  12. data/lib/sunspot_solr.rb +5 -0
  13. data/solr/README.txt +42 -0
  14. data/solr/etc/jetty.xml +219 -0
  15. data/solr/etc/webdefault.xml +379 -0
  16. data/solr/lib/jetty-6.1.26-patched-JETTY-1340.jar +0 -0
  17. data/solr/lib/jetty-util-6.1.26-patched-JETTY-1340.jar +0 -0
  18. data/solr/lib/jsp-2.1/ant-1.6.5.jar +0 -0
  19. data/solr/lib/jsp-2.1/core-3.1.1.jar +0 -0
  20. data/solr/lib/jsp-2.1/jsp-2.1.jar +0 -0
  21. data/solr/lib/jsp-2.1/jsp-api-2.1.jar +0 -0
  22. data/solr/lib/servlet-api-2.5-20081211.jar +0 -0
  23. data/solr/solr/.gitignore +1 -0
  24. data/solr/solr/README.txt +54 -0
  25. data/solr/solr/conf/admin-extra.html +31 -0
  26. data/solr/solr/conf/elevate.xml +36 -0
  27. data/solr/solr/conf/mapping-ISOLatin1Accent.txt +246 -0
  28. data/solr/solr/conf/protwords.txt +21 -0
  29. data/solr/solr/conf/schema.xml +250 -0
  30. data/solr/solr/conf/scripts.conf +24 -0
  31. data/solr/solr/conf/solrconfig.xml +934 -0
  32. data/solr/solr/conf/spellings.txt +2 -0
  33. data/solr/solr/conf/stopwords.txt +58 -0
  34. data/solr/solr/conf/synonyms.txt +31 -0
  35. data/solr/solr/conf/xslt/example.xsl +132 -0
  36. data/solr/solr/conf/xslt/example_atom.xsl +67 -0
  37. data/solr/solr/conf/xslt/example_rss.xsl +66 -0
  38. data/solr/solr/conf/xslt/luke.xsl +337 -0
  39. data/solr/start.jar +0 -0
  40. data/solr/webapps/solr.war +0 -0
  41. data/spec/server_spec.rb +98 -0
  42. data/spec/spec_helper.rb +18 -0
  43. data/sunspot_solr.gemspec +37 -0
  44. metadata +139 -0
@@ -0,0 +1,49 @@
1
+ namespace :sunspot do
2
+ namespace :solr do
3
+ desc 'Start the Solr instance'
4
+ task :start => :environment do
5
+ case RUBY_PLATFORM
6
+ when /w(in)?32$/, /java$/
7
+ abort("This command is not supported on #{RUBY_PLATFORM}. " +
8
+ "Use rake sunspot:solr:run to run Solr in the foreground.")
9
+ end
10
+
11
+ if defined?(Sunspot::Rails::Server)
12
+ Sunspot::Rails::Server.new.start
13
+ else
14
+ Sunspot::Solr::Server.new.start
15
+ end
16
+
17
+ puts "Successfully started Solr ..."
18
+ end
19
+
20
+ desc 'Run the Solr instance in the foreground'
21
+ task :run => :environment do
22
+ if defined?(Sunspot::Rails::Server)
23
+ Sunspot::Rails::Server.new.run
24
+ else
25
+ Sunspot::Solr::Server.new.run
26
+ end
27
+ end
28
+
29
+ desc 'Stop the Solr instance'
30
+ task :stop => :environment do
31
+ case RUBY_PLATFORM
32
+ when /w(in)?32$/, /java$/
33
+ abort("This command is not supported on #{RUBY_PLATFORM}. " +
34
+ "Use rake sunspot:solr:run to run Solr in the foreground.")
35
+ end
36
+
37
+ if defined?(Sunspot::Rails::Server)
38
+ Sunspot::Rails::Server.new.stop
39
+ else
40
+ Sunspot::Solr::Server.new.stop
41
+ end
42
+
43
+ puts "Successfully stopped Solr ..."
44
+ end
45
+
46
+ # for backwards compatibility
47
+ task :reindex => :"sunspot:reindex"
48
+ end
49
+ end
@@ -0,0 +1,5 @@
1
+ require 'sunspot/solr/server'
2
+
3
+ if defined?(Rails) && Rails::VERSION::MAJOR == 3
4
+ require 'sunspot/solr/railtie'
5
+ end
@@ -0,0 +1,42 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one or more
2
+ # contributor license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright ownership.
4
+ # The ASF licenses this file to You under the Apache License, Version 2.0
5
+ # (the "License"); you may not use this file except in compliance with
6
+ # the License. You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ Solr example configuration
17
+ --------------------------
18
+
19
+ To run this example configuration, use
20
+
21
+ java -jar start.jar
22
+
23
+ in this directory, and when Solr is started connect to
24
+
25
+ http://localhost:8983/solr/admin/
26
+
27
+ To add documents to the index, use the post.sh script in the exampledocs
28
+ subdirectory (while Solr is running), for example:
29
+
30
+ cd exampledocs
31
+ ./post.sh *.xml
32
+
33
+ See also README.txt in the solr subdirectory, and check
34
+ http://wiki.apache.org/solr/SolrResources for a list of tutorials and
35
+ introductory articles.
36
+
37
+ NOTE: This Solr example server references SolrCell jars outside of the server
38
+ directory with <lib> statements in the solrconfig.xml. If you make a copy of
39
+ this example server and wish to use the ExtractingRequestHandler (SolrCell),
40
+ you will need to copy the required jars into solr/lib or update the paths to
41
+ the jars in your solrconfig.xml.
42
+
@@ -0,0 +1,219 @@
1
+ <?xml version="1.0"?>
2
+ <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
3
+
4
+ <!-- =============================================================== -->
5
+ <!-- Configure the Jetty Server -->
6
+ <!-- -->
7
+ <!-- Documentation of this file format can be found at: -->
8
+ <!-- http://docs.codehaus.org/display/JETTY/jetty.xml -->
9
+ <!-- -->
10
+ <!-- =============================================================== -->
11
+
12
+
13
+ <Configure id="Server" class="org.mortbay.jetty.Server">
14
+
15
+ <!-- Increase the maximum POST size to 1 MB to be able to handle large shard requests -->
16
+ <Call class="java.lang.System" name="setProperty">
17
+ <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg>
18
+ <Arg>1000000</Arg>
19
+ </Call>
20
+
21
+ <!-- =========================================================== -->
22
+ <!-- Server Thread Pool -->
23
+ <!-- =========================================================== -->
24
+ <Set name="ThreadPool">
25
+ <!-- Default bounded blocking threadpool
26
+ -->
27
+ <New class="org.mortbay.thread.BoundedThreadPool">
28
+ <Set name="minThreads">10</Set>
29
+ <Set name="lowThreads">50</Set>
30
+ <Set name="maxThreads">10000</Set>
31
+ </New>
32
+
33
+ <!-- Optional Java 5 bounded threadpool with job queue
34
+ <New class="org.mortbay.thread.concurrent.ThreadPool">
35
+ <Arg type="int">0</Arg>
36
+ <Set name="corePoolSize">10</Set>
37
+ <Set name="maximumPoolSize">250</Set>
38
+ </New>
39
+ -->
40
+ </Set>
41
+
42
+
43
+
44
+ <!-- =========================================================== -->
45
+ <!-- Set connectors -->
46
+ <!-- =========================================================== -->
47
+ <!-- One of each type! -->
48
+ <!-- =========================================================== -->
49
+
50
+ <!-- Use this connector for many frequently idle connections
51
+ and for threadless continuations.
52
+ <Call name="addConnector">
53
+ <Arg>
54
+ <New class="org.mortbay.jetty.nio.SelectChannelConnector">
55
+ <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set>
56
+ <Set name="maxIdleTime">30000</Set>
57
+ <Set name="Acceptors">2</Set>
58
+ <Set name="confidentialPort">8443</Set>
59
+ </New>
60
+ </Arg>
61
+ </Call>
62
+ -->
63
+
64
+ <!-- Use this connector if NIO is not available. -->
65
+ <!-- This connector is currently being used for Solr because the
66
+ nio.SelectChannelConnector showed poor performance under WindowsXP
67
+ from a single client with non-persistent connections (35s vs ~3min)
68
+ to complete 10,000 requests)
69
+ -->
70
+ <Call name="addConnector">
71
+ <Arg>
72
+ <New class="org.mortbay.jetty.bio.SocketConnector">
73
+ <Set name="host"><SystemProperty name="jetty.host" default="0.0.0.0"/></Set>
74
+ <Set name="port"><SystemProperty name="jetty.port" default="8983"/></Set>
75
+ <Set name="maxIdleTime">50000</Set>
76
+ <Set name="lowResourceMaxIdleTime">1500</Set>
77
+ <!-- Increase header buffer size from default of 4KB to 64KB to
78
+ prevent Solr from reaching this limit during large queries
79
+ -->
80
+ <Set name="headerBufferSize">65536</Set>
81
+ </New>
82
+ </Arg>
83
+ </Call>
84
+
85
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
86
+ <!-- To add a HTTPS SSL listener -->
87
+ <!-- see jetty-ssl.xml to add an ssl connector. use -->
88
+ <!-- java -jar start.jar etc/jetty.xml etc/jetty-ssl.xml -->
89
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
90
+
91
+ <!-- =========================================================== -->
92
+ <!-- Set up global session ID manager -->
93
+ <!-- =========================================================== -->
94
+ <!--
95
+ <Set name="sessionIdManager">
96
+ <New class="org.mortbay.jetty.servlet.HashSessionIdManager">
97
+ <Set name="workerName">node1</Set>
98
+ </New>
99
+ </Set>
100
+ -->
101
+
102
+ <!-- =========================================================== -->
103
+ <!-- Set handler Collection Structure -->
104
+ <!-- =========================================================== -->
105
+ <Set name="handler">
106
+ <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
107
+ <Set name="handlers">
108
+ <Array type="org.mortbay.jetty.Handler">
109
+ <Item>
110
+ <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>
111
+ </Item>
112
+ <Item>
113
+ <New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/>
114
+ </Item>
115
+ <Item>
116
+ <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>
117
+ </Item>
118
+ </Array>
119
+ </Set>
120
+ </New>
121
+ </Set>
122
+
123
+ <!-- =========================================================== -->
124
+ <!-- Configure the context deployer -->
125
+ <!-- A context deployer will deploy contexts described in -->
126
+ <!-- configuration files discovered in a directory. -->
127
+ <!-- The configuration directory can be scanned for hot -->
128
+ <!-- deployments at the configured scanInterval. -->
129
+ <!-- -->
130
+ <!-- This deployer is configured to deploy contexts configured -->
131
+ <!-- in the $JETTY_HOME/contexts directory -->
132
+ <!-- -->
133
+ <!-- =========================================================== -->
134
+ <Call name="addLifeCycle">
135
+ <Arg>
136
+ <New class="org.mortbay.jetty.deployer.ContextDeployer">
137
+ <Set name="contexts"><Ref id="Contexts"/></Set>
138
+ <Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts</Set>
139
+ <Set name="scanInterval">1</Set>
140
+ </New>
141
+ </Arg>
142
+ </Call>
143
+
144
+ <!-- =========================================================== -->
145
+ <!-- Configure the webapp deployer. -->
146
+ <!-- A webapp deployer will deploy standard webapps discovered -->
147
+ <!-- in a directory at startup, without the need for additional -->
148
+ <!-- configuration files. It does not support hot deploy or -->
149
+ <!-- non standard contexts (see ContextDeployer above). -->
150
+ <!-- -->
151
+ <!-- This deployer is configured to deploy webapps from the -->
152
+ <!-- $JETTY_HOME/webapps directory -->
153
+ <!-- -->
154
+ <!-- Normally only one type of deployer need be used. -->
155
+ <!-- -->
156
+ <!-- =========================================================== -->
157
+ <Call name="addLifeCycle">
158
+ <Arg>
159
+ <New class="org.mortbay.jetty.deployer.WebAppDeployer">
160
+ <Set name="contexts"><Ref id="Contexts"/></Set>
161
+ <Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>
162
+ <Set name="parentLoaderPriority">false</Set>
163
+ <Set name="extract">true</Set>
164
+ <Set name="allowDuplicates">false</Set>
165
+ <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>
166
+ </New>
167
+ </Arg>
168
+ </Call>
169
+
170
+ <!-- =========================================================== -->
171
+ <!-- Configure Authentication Realms -->
172
+ <!-- Realms may be configured for the entire server here, or -->
173
+ <!-- they can be configured for a specific web app in a context -->
174
+ <!-- configuration (see $(jetty.home)/contexts/test.xml for an -->
175
+ <!-- example). -->
176
+ <!-- =========================================================== -->
177
+ <Set name="UserRealms">
178
+ <Array type="org.mortbay.jetty.security.UserRealm">
179
+ <!--
180
+ <Item>
181
+ <New class="org.mortbay.jetty.security.HashUserRealm">
182
+ <Set name="name">Test Realm</Set>
183
+ <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
184
+ </New>
185
+ </Item>
186
+ -->
187
+ </Array>
188
+ </Set>
189
+
190
+ <!-- =========================================================== -->
191
+ <!-- Configure Request Log -->
192
+ <!-- Request logs may be configured for the entire server here, -->
193
+ <!-- or they can be configured for a specific web app in a -->
194
+ <!-- contexts configuration (see $(jetty.home)/contexts/test.xml -->
195
+ <!-- for an example). -->
196
+ <!-- =========================================================== -->
197
+ <!--
198
+ <Ref id="RequestLog">
199
+ <Set name="requestLog">
200
+ <New id="RequestLogImpl" class="org.mortbay.jetty.NCSARequestLog">
201
+ <Arg><SystemProperty name="jetty.logs" default="./logs"/>/yyyy_mm_dd.request.log</Arg>
202
+ <Set name="retainDays">90</Set>
203
+ <Set name="append">true</Set>
204
+ <Set name="extended">false</Set>
205
+ <Set name="LogTimeZone">GMT</Set>
206
+ </New>
207
+ </Set>
208
+ </Ref>
209
+ -->
210
+
211
+ <!-- =========================================================== -->
212
+ <!-- extra options -->
213
+ <!-- =========================================================== -->
214
+ <Set name="stopAtShutdown">true</Set>
215
+ <!-- ensure/prevent Server: header being sent to browsers -->
216
+ <Set name="sendServerVersion">true</Set>
217
+
218
+ </Configure>
219
+
@@ -0,0 +1,379 @@
1
+ <?xml version="1.0" encoding="ISO-8859-1"?>
2
+
3
+ <!-- ===================================================================== -->
4
+ <!-- This file contains the default descriptor for web applications. -->
5
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
6
+ <!-- The intent of this descriptor is to include jetty specific or common -->
7
+ <!-- configuration for all webapps. If a context has a webdefault.xml -->
8
+ <!-- descriptor, it is applied before the contexts own web.xml file -->
9
+ <!-- -->
10
+ <!-- A context may be assigned a default descriptor by: -->
11
+ <!-- + Calling WebApplicationContext.setDefaultsDescriptor -->
12
+ <!-- + Passed an arg to addWebApplications -->
13
+ <!-- -->
14
+ <!-- This file is used both as the resource within the jetty.jar (which is -->
15
+ <!-- used as the default if no explicit defaults descriptor is set) and it -->
16
+ <!-- is copied to the etc directory of the Jetty distro and explicitly -->
17
+ <!-- by the jetty.xml file. -->
18
+ <!-- -->
19
+ <!-- ===================================================================== -->
20
+ <web-app
21
+ xmlns="http://java.sun.com/xml/ns/javaee"
22
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
24
+ metadata-complete="true"
25
+ version="2.5">
26
+
27
+ <description>
28
+ Default web.xml file.
29
+ This file is applied to a Web application before it's own WEB_INF/web.xml file
30
+ </description>
31
+
32
+
33
+ <!-- ==================================================================== -->
34
+ <!-- Context params to control Session Cookies -->
35
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
36
+ <!-- UNCOMMENT TO ACTIVATE
37
+ <context-param>
38
+ <param-name>org.mortbay.jetty.servlet.SessionDomain</param-name>
39
+ <param-value>127.0.0.1</param-value>
40
+ </context-param>
41
+
42
+ <context-param>
43
+ <param-name>org.mortbay.jetty.servlet.SessionPath</param-name>
44
+ <param-value>/</param-value>
45
+ </context-param>
46
+
47
+ <context-param>
48
+ <param-name>org.mortbay.jetty.servlet.MaxAge</param-name>
49
+ <param-value>-1</param-value>
50
+ </context-param>
51
+ -->
52
+
53
+ <context-param>
54
+ <param-name>org.mortbay.jetty.webapp.NoTLDJarPattern</param-name>
55
+ <param-value>start.jar|ant-.*\.jar|dojo-.*\.jar|jetty-.*\.jar|jsp-api-.*\.jar|junit-.*\.jar|servlet-api-.*\.jar|dnsns\.jar|rt\.jar|jsse\.jar|tools\.jar|sunpkcs11\.jar|sunjce_provider\.jar|xerces.*\.jar|</param-value>
56
+ </context-param>
57
+
58
+
59
+
60
+ <!-- ==================================================================== -->
61
+ <!-- The default servlet. -->
62
+ <!-- This servlet, normally mapped to /, provides the handling for static -->
63
+ <!-- content, OPTIONS and TRACE methods for the context. -->
64
+ <!-- The following initParameters are supported: -->
65
+ <!-- -->
66
+ <!-- acceptRanges If true, range requests and responses are -->
67
+ <!-- supported -->
68
+ <!-- -->
69
+ <!-- dirAllowed If true, directory listings are returned if no -->
70
+ <!-- welcome file is found. Else 403 Forbidden. -->
71
+ <!-- -->
72
+ <!-- redirectWelcome If true, redirect welcome file requests -->
73
+ <!-- else use request dispatcher forwards -->
74
+ <!-- -->
75
+ <!-- gzip If set to true, then static content will be served-->
76
+ <!-- as gzip content encoded if a matching resource is -->
77
+ <!-- found ending with ".gz" -->
78
+ <!-- -->
79
+ <!-- resoureBase Can be set to replace the context resource base -->
80
+ <!-- -->
81
+ <!-- relativeResourceBase -->
82
+ <!-- Set with a pathname relative to the base of the -->
83
+ <!-- servlet context root. Useful for only serving -->
84
+ <!-- static content from only specific subdirectories. -->
85
+ <!-- -->
86
+ <!-- useFileMappedBuffer -->
87
+ <!-- If set to true (the default), a memory mapped -->
88
+ <!-- file buffer will be used to serve static content -->
89
+ <!-- when using an NIO connector. Setting this value -->
90
+ <!-- to false means that a direct buffer will be used -->
91
+ <!-- instead. If you are having trouble with Windows -->
92
+ <!-- file locking, set this to false. -->
93
+ <!-- -->
94
+ <!-- cacheControl If set, all static content will have this value -->
95
+ <!-- set as the cache-control header. -->
96
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
97
+ <servlet>
98
+ <servlet-name>default</servlet-name>
99
+ <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class>
100
+ <init-param>
101
+ <param-name>acceptRanges</param-name>
102
+ <param-value>true</param-value>
103
+ </init-param>
104
+ <init-param>
105
+ <param-name>dirAllowed</param-name>
106
+ <param-value>true</param-value>
107
+ </init-param>
108
+ <init-param>
109
+ <param-name>redirectWelcome</param-name>
110
+ <param-value>false</param-value>
111
+ </init-param>
112
+ <init-param>
113
+ <param-name>maxCacheSize</param-name>
114
+ <param-value>2000000</param-value>
115
+ </init-param>
116
+ <init-param>
117
+ <param-name>maxCachedFileSize</param-name>
118
+ <param-value>254000</param-value>
119
+ </init-param>
120
+ <init-param>
121
+ <param-name>maxCachedFiles</param-name>
122
+ <param-value>1000</param-value>
123
+ </init-param>
124
+ <init-param>
125
+ <param-name>gzip</param-name>
126
+ <param-value>false</param-value>
127
+ </init-param>
128
+ <init-param>
129
+ <param-name>useFileMappedBuffer</param-name>
130
+ <param-value>false</param-value>
131
+ </init-param>
132
+ <!--
133
+ <init-param>
134
+ <param-name>cacheControl</param-name>
135
+ <param-value>max-age=3600,public</param-value>
136
+ </init-param>
137
+ -->
138
+ <load-on-startup>0</load-on-startup>
139
+ </servlet>
140
+
141
+ <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
142
+
143
+
144
+ <!-- ==================================================================== -->
145
+ <!-- JSP Servlet -->
146
+ <!-- This is the jasper JSP servlet from the jakarta project -->
147
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
148
+ <!-- The JSP page compiler and execution servlet, which is the mechanism -->
149
+ <!-- used by Glassfish to support JSP pages. Traditionally, this servlet -->
150
+ <!-- is mapped to URL patterh "*.jsp". This servlet supports the -->
151
+ <!-- following initialization parameters (default values are in square -->
152
+ <!-- brackets): -->
153
+ <!-- -->
154
+ <!-- checkInterval If development is false and reloading is true, -->
155
+ <!-- background compiles are enabled. checkInterval -->
156
+ <!-- is the time in seconds between checks to see -->
157
+ <!-- if a JSP page needs to be recompiled. [300] -->
158
+ <!-- -->
159
+ <!-- compiler Which compiler Ant should use to compile JSP -->
160
+ <!-- pages. See the Ant documenation for more -->
161
+ <!-- information. [javac] -->
162
+ <!-- -->
163
+ <!-- classdebuginfo Should the class file be compiled with -->
164
+ <!-- debugging information? [true] -->
165
+ <!-- -->
166
+ <!-- classpath What class path should I use while compiling -->
167
+ <!-- generated servlets? [Created dynamically -->
168
+ <!-- based on the current web application] -->
169
+ <!-- Set to ? to make the container explicitly set -->
170
+ <!-- this parameter. -->
171
+ <!-- -->
172
+ <!-- development Is Jasper used in development mode (will check -->
173
+ <!-- for JSP modification on every access)? [true] -->
174
+ <!-- -->
175
+ <!-- enablePooling Determines whether tag handler pooling is -->
176
+ <!-- enabled [true] -->
177
+ <!-- -->
178
+ <!-- fork Tell Ant to fork compiles of JSP pages so that -->
179
+ <!-- a separate JVM is used for JSP page compiles -->
180
+ <!-- from the one Tomcat is running in. [true] -->
181
+ <!-- -->
182
+ <!-- ieClassId The class-id value to be sent to Internet -->
183
+ <!-- Explorer when using <jsp:plugin> tags. -->
184
+ <!-- [clsid:8AD9C840-044E-11D1-B3E9-00805F499D93] -->
185
+ <!-- -->
186
+ <!-- javaEncoding Java file encoding to use for generating java -->
187
+ <!-- source files. [UTF-8] -->
188
+ <!-- -->
189
+ <!-- keepgenerated Should we keep the generated Java source code -->
190
+ <!-- for each page instead of deleting it? [true] -->
191
+ <!-- -->
192
+ <!-- logVerbosityLevel The level of detailed messages to be produced -->
193
+ <!-- by this servlet. Increasing levels cause the -->
194
+ <!-- generation of more messages. Valid values are -->
195
+ <!-- FATAL, ERROR, WARNING, INFORMATION, and DEBUG. -->
196
+ <!-- [WARNING] -->
197
+ <!-- -->
198
+ <!-- mappedfile Should we generate static content with one -->
199
+ <!-- print statement per input line, to ease -->
200
+ <!-- debugging? [false] -->
201
+ <!-- -->
202
+ <!-- -->
203
+ <!-- reloading Should Jasper check for modified JSPs? [true] -->
204
+ <!-- -->
205
+ <!-- suppressSmap Should the generation of SMAP info for JSR45 -->
206
+ <!-- debugging be suppressed? [false] -->
207
+ <!-- -->
208
+ <!-- dumpSmap Should the SMAP info for JSR45 debugging be -->
209
+ <!-- dumped to a file? [false] -->
210
+ <!-- False if suppressSmap is true -->
211
+ <!-- -->
212
+ <!-- scratchdir What scratch directory should we use when -->
213
+ <!-- compiling JSP pages? [default work directory -->
214
+ <!-- for the current web application] -->
215
+ <!-- -->
216
+ <!-- tagpoolMaxSize The maximum tag handler pool size [5] -->
217
+ <!-- -->
218
+ <!-- xpoweredBy Determines whether X-Powered-By response -->
219
+ <!-- header is added by generated servlet [false] -->
220
+ <!-- -->
221
+ <!-- If you wish to use Jikes to compile JSP pages: -->
222
+ <!-- Set the init parameter "compiler" to "jikes". Define -->
223
+ <!-- the property "-Dbuild.compiler.emacs=true" when starting Jetty -->
224
+ <!-- to cause Jikes to emit error messages in a format compatible with -->
225
+ <!-- Jasper. -->
226
+ <!-- If you get an error reporting that jikes can't use UTF-8 encoding, -->
227
+ <!-- try setting the init parameter "javaEncoding" to "ISO-8859-1". -->
228
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
229
+ <servlet id="jsp">
230
+ <servlet-name>jsp</servlet-name>
231
+ <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
232
+ <init-param>
233
+ <param-name>logVerbosityLevel</param-name>
234
+ <param-value>DEBUG</param-value>
235
+ </init-param>
236
+ <init-param>
237
+ <param-name>fork</param-name>
238
+ <param-value>false</param-value>
239
+ </init-param>
240
+ <init-param>
241
+ <param-name>xpoweredBy</param-name>
242
+ <param-value>false</param-value>
243
+ </init-param>
244
+ <!--
245
+ <init-param>
246
+ <param-name>classpath</param-name>
247
+ <param-value>?</param-value>
248
+ </init-param>
249
+ -->
250
+ <load-on-startup>0</load-on-startup>
251
+ </servlet>
252
+
253
+ <servlet-mapping>
254
+ <servlet-name>jsp</servlet-name>
255
+ <url-pattern>*.jsp</url-pattern>
256
+ <url-pattern>*.jspf</url-pattern>
257
+ <url-pattern>*.jspx</url-pattern>
258
+ <url-pattern>*.xsp</url-pattern>
259
+ <url-pattern>*.JSP</url-pattern>
260
+ <url-pattern>*.JSPF</url-pattern>
261
+ <url-pattern>*.JSPX</url-pattern>
262
+ <url-pattern>*.XSP</url-pattern>
263
+ </servlet-mapping>
264
+
265
+ <!-- ==================================================================== -->
266
+ <!-- Dynamic Servlet Invoker. -->
267
+ <!-- This servlet invokes anonymous servlets that have not been defined -->
268
+ <!-- in the web.xml or by other means. The first element of the pathInfo -->
269
+ <!-- of a request passed to the envoker is treated as a servlet name for -->
270
+ <!-- an existing servlet, or as a class name of a new servlet. -->
271
+ <!-- This servlet is normally mapped to /servlet/* -->
272
+ <!-- This servlet support the following initParams: -->
273
+ <!-- -->
274
+ <!-- nonContextServlets If false, the invoker can only load -->
275
+ <!-- servlets from the contexts classloader. -->
276
+ <!-- This is false by default and setting this -->
277
+ <!-- to true may have security implications. -->
278
+ <!-- -->
279
+ <!-- verbose If true, log dynamic loads -->
280
+ <!-- -->
281
+ <!-- * All other parameters are copied to the -->
282
+ <!-- each dynamic servlet as init parameters -->
283
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
284
+ <!-- Uncomment for dynamic invocation
285
+ <servlet>
286
+ <servlet-name>invoker</servlet-name>
287
+ <servlet-class>org.mortbay.jetty.servlet.Invoker</servlet-class>
288
+ <init-param>
289
+ <param-name>verbose</param-name>
290
+ <param-value>false</param-value>
291
+ </init-param>
292
+ <init-param>
293
+ <param-name>nonContextServlets</param-name>
294
+ <param-value>false</param-value>
295
+ </init-param>
296
+ <init-param>
297
+ <param-name>dynamicParam</param-name>
298
+ <param-value>anyValue</param-value>
299
+ </init-param>
300
+ <load-on-startup>0</load-on-startup>
301
+ </servlet>
302
+
303
+ <servlet-mapping> <servlet-name>invoker</servlet-name> <url-pattern>/servlet/*</url-pattern> </servlet-mapping>
304
+ -->
305
+
306
+
307
+
308
+ <!-- ==================================================================== -->
309
+ <session-config>
310
+ <session-timeout>30</session-timeout>
311
+ </session-config>
312
+
313
+ <!-- ==================================================================== -->
314
+ <!-- Default MIME mappings -->
315
+ <!-- The default MIME mappings are provided by the mime.properties -->
316
+ <!-- resource in the org.mortbay.jetty.jar file. Additional or modified -->
317
+ <!-- mappings may be specified here -->
318
+ <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
319
+ <!-- UNCOMMENT TO ACTIVATE
320
+ <mime-mapping>
321
+ <extension>mysuffix</extension>
322
+ <mime-type>mymime/type</mime-type>
323
+ </mime-mapping>
324
+ -->
325
+
326
+ <!-- ==================================================================== -->
327
+ <welcome-file-list>
328
+ <welcome-file>index.html</welcome-file>
329
+ <welcome-file>index.htm</welcome-file>
330
+ <welcome-file>index.jsp</welcome-file>
331
+ </welcome-file-list>
332
+
333
+ <!-- ==================================================================== -->
334
+ <locale-encoding-mapping-list>
335
+ <locale-encoding-mapping><locale>ar</locale><encoding>ISO-8859-6</encoding></locale-encoding-mapping>
336
+ <locale-encoding-mapping><locale>be</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
337
+ <locale-encoding-mapping><locale>bg</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
338
+ <locale-encoding-mapping><locale>ca</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
339
+ <locale-encoding-mapping><locale>cs</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
340
+ <locale-encoding-mapping><locale>da</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
341
+ <locale-encoding-mapping><locale>de</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
342
+ <locale-encoding-mapping><locale>el</locale><encoding>ISO-8859-7</encoding></locale-encoding-mapping>
343
+ <locale-encoding-mapping><locale>en</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
344
+ <locale-encoding-mapping><locale>es</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
345
+ <locale-encoding-mapping><locale>et</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
346
+ <locale-encoding-mapping><locale>fi</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
347
+ <locale-encoding-mapping><locale>fr</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
348
+ <locale-encoding-mapping><locale>hr</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
349
+ <locale-encoding-mapping><locale>hu</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
350
+ <locale-encoding-mapping><locale>is</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
351
+ <locale-encoding-mapping><locale>it</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
352
+ <locale-encoding-mapping><locale>iw</locale><encoding>ISO-8859-8</encoding></locale-encoding-mapping>
353
+ <locale-encoding-mapping><locale>ja</locale><encoding>Shift_JIS</encoding></locale-encoding-mapping>
354
+ <locale-encoding-mapping><locale>ko</locale><encoding>EUC-KR</encoding></locale-encoding-mapping>
355
+ <locale-encoding-mapping><locale>lt</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
356
+ <locale-encoding-mapping><locale>lv</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
357
+ <locale-encoding-mapping><locale>mk</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
358
+ <locale-encoding-mapping><locale>nl</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
359
+ <locale-encoding-mapping><locale>no</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
360
+ <locale-encoding-mapping><locale>pl</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
361
+ <locale-encoding-mapping><locale>pt</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
362
+ <locale-encoding-mapping><locale>ro</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
363
+ <locale-encoding-mapping><locale>ru</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
364
+ <locale-encoding-mapping><locale>sh</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
365
+ <locale-encoding-mapping><locale>sk</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
366
+ <locale-encoding-mapping><locale>sl</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
367
+ <locale-encoding-mapping><locale>sq</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping>
368
+ <locale-encoding-mapping><locale>sr</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
369
+ <locale-encoding-mapping><locale>sv</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping>
370
+ <locale-encoding-mapping><locale>tr</locale><encoding>ISO-8859-9</encoding></locale-encoding-mapping>
371
+ <locale-encoding-mapping><locale>uk</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping>
372
+ <locale-encoding-mapping><locale>zh</locale><encoding>GB2312</encoding></locale-encoding-mapping>
373
+ <locale-encoding-mapping><locale>zh_TW</locale><encoding>Big5</encoding></locale-encoding-mapping>
374
+ </locale-encoding-mapping-list>
375
+
376
+
377
+
378
+ </web-app>
379
+