как читать файл из веб-приложения лифта - PullRequest
5 голосов
/ 25 сентября 2011

Я хочу прочитать XML-файл в моем приложении лифта:

val data = XML.load (новый java.io.InputStreamReader (новый java.io.FileInputStream (имя файла), кодировка));

Однако я получаю java.io.FileNotFoundException.куда я должен поместить файл, и каков правильный путь из моего кода Scala?

Кстати: я использую встроенный Jetty для своего тестирования, хотя мне нужно решение для dev env и production.

Ответы [ 2 ]

7 голосов
/ 25 сентября 2011

Может быть лучшее решение для других путей, но есть

var LiftRules.getResource : (String) ⇒ Box[URL]

или

def LiftRules.doWithResource(name: String)(f: (InputStream) ⇒ T): Box[T]

, которые обычно указывают на файлы в src/main/resources/.

Существует также

def LiftRules.loadResourceAsXml(name: String): Box[NodeSeq]

Это может быть метод, который вы ищете.

2 голосов
/ 25 сентября 2011

Чтобы решить эту проблему в общем случае, new File("delme").createNewFile() и посмотрите, чем она заканчивается.

...