У меня такое чувство, что я пропустил что-то очевидное здесь, но я не знаю, с чего начать.404s при развертывании войны noir с причалом на сжатии
У меня есть свежий нуар приложение, созданные таким образом:
$ lein noir new hiworld
добавить новый обработчик страницы в SRC/hiworld/server.clj:
(ns hiworld.server
(:require [noir.server :as server]))
(server/load-views "src/hiworld/views/")
(def handler (server/gen-handler {:mode :dev
:ns 'hiworld}))
Я установил project.clj для кольцо:
(defproject hiworld "0.1.0-SNAPSHOT"
:description "FIXME: write this!"
:dependencies [[org.clojure/clojure "1.3.0"]
[noir "1.2.2-SNAPSHOT"]]
:dev-dependencies [[lein-ring "0.5.4"]]
:ring {:handler hiworld.server/handler}
:main hiworld.server)
Проверить это работает локально:
$ lein deps
$ lein ring server-headless
# elsewhere
$ curl -I localhost:3000/welcome
HTTP/1.1 200 OK
Date: Mon, 20 Feb 2012 08:51:15 GMT
Set-Cookie: ring-session=ef00a7ad-2061-4026-9d94-3ed86ec8c46c;Path=/
Content-Type: text/html; charset=utf-8
Content-Length: 0
Server: Jetty(6.1.25)
Я строю войну:
$ lein ring uberwar
# builds hiworld-0.1.0-SNAPSHOT-standalone.war
Все хорошо до сих пор. Теперь, я раскрываю его причалу:
$ sudo apt-get install jetty libjetty-extra
$ sudo cp hiworld-0.1.0-SNAPSHOT-standalone.war /usr/share/jetty/webapps/root.war
$ sudo chown jetty:adm /usr/share/jetty/webapps/root.war
$ sudo mv /usr/share/jetty/webapps/root /usr/share/jetty/webapps/root-orig
$ sudo /etc/init.d/jetty restart
Но:
$ curl -I localhost:8080/welcome
HTTP/1.1 404 Not Found
Date: Mon, 20 Feb 2012 08:59:27 GMT
Set-Cookie: ring-session=c255da15-6cbd-4d2c-8e17-9d120918bde9;Path=/
Content-Type: text/html; charset=utf-8
Content-Length: 363
Server: Jetty(6.1.24)
Что я пропустил? Насколько я могу судить, это должно быть все, что мне нужно сделать, чтобы развернуть тривиальное веб-приложение на пристани, но, очевидно, у меня здесь что-то не так. Я не против перезапуска, так что я не думаю Мне нужно определить мой собственный контекст - или я?
UPDATE
Я следовал this последовательность команд для создания простого «привет мир» войну не с участием Clojure на всех, и он работает, как ожидалось, поэтому, казалось бы, что там что-то не Совершенно верно с помощью стека clojure.
ОБНОВЛЕНО СНОВА
Я создал простейшее кольцо приложения в качестве автономной войны и развернуть его. Это сработало, так что похоже, что это что-то вроде noir.
ОБНОВЛЕНО третий раз
я создал и развернул привет-приложение мира compojure, который работал, как ожидалось.