diff --git a/src/main/assemblies/package.xml b/src/main/assemblies/package.xml
index ee8074d21dfc3c8733b5cc08a66f9e8af91d9e62..49896432cb70dfc9ccd2b63f1525d50c32c05f01 100644
--- a/src/main/assemblies/package.xml
+++ b/src/main/assemblies/package.xml
@@ -18,7 +18,15 @@
 			</includes>
 		</dependencySet>
 		<dependencySet>
-			<outputDirectory>fess-${project.version}/app/WEB-INF/cmd/lib</outputDirectory>
+			<outputDirectory>fess-${project.version}/app/WEB-INF/crawler/lib</outputDirectory>
+			<useProjectArtifact>false</useProjectArtifact>
+			<includes>
+				<include>javax.servlet:javax.servlet-api</include>
+			</includes>
+			<scope>provided</scope>
+		</dependencySet>
+		<dependencySet>
+			<outputDirectory>fess-${project.version}/app/WEB-INF/suggest/lib</outputDirectory>
 			<useProjectArtifact>false</useProjectArtifact>
 			<includes>
 				<include>javax.servlet:javax.servlet-api</include>
diff --git a/src/main/java/org/codelibs/fess/job/CrawlJob.java b/src/main/java/org/codelibs/fess/job/CrawlJob.java
index 7f37e2cb08d769a67baba35e1697add266ee41b5..ec72191a6c07c1e86c604e8da91e8506497905ac 100644
--- a/src/main/java/org/codelibs/fess/job/CrawlJob.java
+++ b/src/main/java/org/codelibs/fess/job/CrawlJob.java
@@ -228,10 +228,10 @@ public class CrawlJob {
         // -cp
         crawlerCmdList.add("-cp");
         final StringBuilder buf = new StringBuilder();
-        // WEB-INF/cmd/resources
+        // WEB-INF/crawler/resources
         buf.append("WEB-INF");
         buf.append(File.separator);
-        buf.append("cmd");
+        buf.append("crawler");
         buf.append(File.separator);
         buf.append("resources");
         buf.append(cpSeparator);
@@ -249,8 +249,8 @@ public class CrawlJob {
         }
         // WEB-INF/lib
         appendJarFile(cpSeparator, buf, new File(servletContext.getRealPath("/WEB-INF/lib")), "WEB-INF/lib" + File.separator);
-        // WEB-INF/cmd/lib
-        appendJarFile(cpSeparator, buf, new File(servletContext.getRealPath("/WEB-INF/cmd/lib")), "WEB-INF/cmd" + File.separator + "lib"
+        // WEB-INF/crawler/lib
+        appendJarFile(cpSeparator, buf, new File(servletContext.getRealPath("/WEB-INF/crawler/lib")), "WEB-INF/crawler" + File.separator + "lib"
                 + File.separator);
         final File targetLibDir = new File(targetDir, "fess" + File.separator + "WEB-INF" + File.separator + "lib");
         if (targetLibDir.isDirectory()) {
diff --git a/src/main/webapp/WEB-INF/cmd/resources/app.xml b/src/main/webapp/WEB-INF/crawler/resources/app.xml
similarity index 100%
rename from src/main/webapp/WEB-INF/cmd/resources/app.xml
rename to src/main/webapp/WEB-INF/crawler/resources/app.xml
diff --git a/src/main/webapp/WEB-INF/cmd/resources/fess_env_production.properties b/src/main/webapp/WEB-INF/crawler/resources/fess_env_production.properties
similarity index 100%
rename from src/main/webapp/WEB-INF/cmd/resources/fess_env_production.properties
rename to src/main/webapp/WEB-INF/crawler/resources/fess_env_production.properties
diff --git a/src/main/webapp/WEB-INF/cmd/resources/my_creator.xml b/src/main/webapp/WEB-INF/crawler/resources/my_creator.xml
similarity index 100%
rename from src/main/webapp/WEB-INF/cmd/resources/my_creator.xml
rename to src/main/webapp/WEB-INF/crawler/resources/my_creator.xml
diff --git a/src/main/webapp/WEB-INF/suggest/resources/app.xml b/src/main/webapp/WEB-INF/suggest/resources/app.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6e7d0a54f531d4a86320e36ad1e1772684056ac4
--- /dev/null
+++ b/src/main/webapp/WEB-INF/suggest/resources/app.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE components PUBLIC "-//DBFLUTE//DTD LastaDi 1.0//EN"
+	"http://dbflute.org/meta/lastadi10.dtd">
+<components>
+	<include path="convention.xml" />
+	<include path="fess.xml" />
+
+	<include path="crawler_es.xml" />
+
+	<component name="indexingHelper" class="org.codelibs.fess.helper.IndexingHelper">
+	</component>
+	<component name="labelTypeHelper" class="org.codelibs.fess.helper.LabelTypeHelper">
+	</component>
+	<component name="webFsIndexHelper" class="org.codelibs.fess.helper.WebFsIndexHelper">
+	</component>
+	<component name="dataIndexHelper" class="org.codelibs.fess.helper.DataIndexHelper">
+	</component>
+	<component name="overlappingHostHelper" class="org.codelibs.fess.helper.OverlappingHostHelper">
+	</component>
+	<component name="intervalControlHelper" class="org.codelibs.fess.helper.IntervalControlHelper">
+		<!-- 
+		<postConstruct name="addIntervalRule">
+			<arg>"5:00"</arg>
+			<arg>"10:00"</arg>
+			<arg>"2,3,4,5,6"</arg>
+			<arg>3600000</arg>
+		</postConstruct>
+		 -->
+	</component>
+	<component name="sambaHelper" class="org.codelibs.fess.helper.SambaHelper">
+	</component>
+	<component name="indexUpdater" class="org.codelibs.fess.indexer.IndexUpdater"
+		instance="prototype">
+		<!-- 
+		<property name="maxDocumentCacheSize">5</property>
+		<property name="unprocessedDocumentSize">100</property>
+		<property name="threadDump">false</property>
+		<postConstruct name="addBoostDocumentRule">
+			<arg>
+				<component class="org.codelibs.fess.indexer.BoostDocumentRule">
+					<property name="matchExpression">"url.matches(\".*fess.*\")"</property>
+					<property name="boostExpression">"1000.0"</property>
+				</component>
+			</arg>
+		</postConstruct>
+		<postConstruct name="addDefaultDocValue">
+			<arg>"FieldName"</arg>
+			<arg>"VALUE"</arg>
+		</postConstruct>
+		 -->
+	</component>
+	<component name="fileTypeHelper" class="org.codelibs.fess.helper.FileTypeHelper">
+		<postConstruct name="add">
+			<arg>"text/html"</arg>
+			<arg>"html"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/msword"</arg>
+			<arg>"word"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/vnd.openxmlformats-officedocument.wordprocessingml.document"</arg>
+			<arg>"word"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/vnd.ms-excel"</arg>
+			<arg>"excel"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"</arg>
+			<arg>"excel"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/vnd.ms-powerpoint"</arg>
+			<arg>"powerpoint"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/vnd.openxmlformats-officedocument.presentationml.presentation"</arg>
+			<arg>"powerpoint"</arg>
+		</postConstruct>
+		<postConstruct name="add">
+			<arg>"application/pdf"</arg>
+			<arg>"pdf"</arg>
+		</postConstruct>
+	</component>
+	<component name="fessCrawler" class="org.codelibs.fess.exec.Crawler"
+		instance="prototype">
+	</component>
+
+</components>
diff --git a/src/main/webapp/WEB-INF/suggest/resources/fess_env_production.properties b/src/main/webapp/WEB-INF/suggest/resources/fess_env_production.properties
new file mode 100644
index 0000000000000000000000000000000000000000..ce9094a559ac58b0493c63214941a0ce1ce87419
--- /dev/null
+++ b/src/main/webapp/WEB-INF/suggest/resources/fess_env_production.properties
@@ -0,0 +1,47 @@
+# _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
+# Fess environment configuration for Local Development
+# _/_/_/_/_/_/_/_/_/_/
+# ========================================================================================
+#                                                                                    Core
+#                                                                                   ======
+# The mode of Lasta Di's smart-deploy, should be cool in production (e.g. hot, cool, warm)
+lasta_di.smart.deploy.mode = warm
+
+# Is development environment here? (used for various purpose, you should set false if unknown)
+development.here = false
+
+# The title of environment (e.g. local or integartion or production)
+environment.title = Production
+
+# Does it enable the Framework internal debug? (true only when emergency)
+framework.debug = false
+
+# one day: 86400000, three days: 259200000, five days: 432000000, one week: 604800000, one year: 31556926000
+# special script :: absolute mode: $(2014/07/10), relative mode: addDay(3).addMonth(4)
+# The milliseconds for (relative or absolute) adjust time (set only when test) @LongType *dynamic in development
+time.adjust.time.millis = 0
+
+# ----------------------------------------------------------
+#                                                      Mail
+#                                                     ------
+# Does it send mock mail? (true: no send actually, logging only)
+mail.send.mock = true
+
+# SMTP server settings for main: host:port
+mail.smtp.server.main.host.and.port = localhost:25
+
+# The prefix of subject to show test environment or not
+mail.subject.test.prefix = 
+
+# The common return path of all mail
+mail.return.path = root@localhost
+
+
+# ========================================================================================
+#                                                                                      DB
+#                                                                                     ====
+
+
+# ========================================================================================
+#                                                                                     Web
+#                                                                                    =====
diff --git a/src/main/webapp/WEB-INF/suggest/resources/my_creator.xml b/src/main/webapp/WEB-INF/suggest/resources/my_creator.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d217ba27fb733c78ac881622cbb829222f44aac8
--- /dev/null
+++ b/src/main/webapp/WEB-INF/suggest/resources/my_creator.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE components PUBLIC "-//DBFLUTE//DTD LastaDi 1.0//EN"
+	"http://dbflute.org/meta/lastadi10.dtd">
+<components>
+</components>