Для scala выглядит очень странно. Rest framework'ов для скала полно (unfiltered, spray, blueeyes и это не конец). Да и с sbt хорошо бы, все же разобраться. Ваш код это java код переписанный на scala, да и для запуска-сборки непонятно зачем костыли.
Почитал подробнее про предложенные Вами фреймворки — хорошие и добротные, но не для меня.
Мне бы что-нибудь попроще.
Идеально было бы запустить Скалатру без Сбт.
Да, мне он понравился — маленький и простой, ничего лишнего.
Только вот pattern matching на case-классах, и кучи обёрток каких-то разных не понравились.
А так, автор хорошо постарался.
build.gradle — вы весь этот файл вручную написали? Для того чтобы построить проект в котором единственный сервис с единственной функцией? Как-то не очень эффективно, неужели это самый лучший метод?
А как ещё вы предложите?
Писать .sh я пробовал — придётся путь к каждому jar'нику добавлять в переменную classpath прямо в скрипте. Если бы можно было по маске — использовал бы скрипт.
И, кстати, scalatra не требует sbt, просто демка сделана на шаблонизаторе для sbt. В общем зря Вы на «15 мин» акцент сделали, лучше больше времени на изучение, чем тяп-ляп.
в принципе, можно написать сканер всех классов в некоем пакете «resources», с аннотацией "@Path(base_path)", и каждый такой путь через звёздочку мэпить на такой ресурс.
Рад был помочь :) Ну вот, стало гораздо симпатичнее и по скаловски. Разве что имхо «val что» лишнее, и так понятно что это параметр. Ну и смысл сканера-пускателя для меня не очевиден. Мне кажется лучше в одном месте явно прописывать какой сервлет куда замаплен.
Пишем простейший REST web-сервис на Scala