我的文件夹结构如下所示
<ListView ItemsSource="{x:Bind Path=Names}">
<ListView.ItemTemplate>
<DataTemplate x:DataType="x:String">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Ellipse
Width="96"
Height="96"
Fill="{x:Bind Converter={StaticResource NameToColorConverter}}" />
<TextBlock
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontSize="45"
Foreground="White"
Text="{x:Bind Converter={StaticResource NameToInitialConverter}}" />
<TextBlock
Grid.Column="1"
Margin="8"
VerticalAlignment="Center"
FontSize="32"
Text="{x:Bind}" />
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
在我我有一个
src
main
clojure
.../core.clj
webapp
WEB-INF
index.html
码头功能
core.clj
main
有此代码
(ns com.lapots.platform.web.core
(:use ring.adapter.jetty)
(:use com.lapots.platform.web.router.core)
(:require [ring.middleware.reload :refer [wrap-reload]])
(:import [org.eclipse.jetty.server.handler StatisticsHandler])
(:gen-class))
(def a-minute 60000)
(defn conf
[server]
(let [stats-handler (StatisticsHandler.)
default-handler (.getHandler server)]
(.setHandler stats-handler default-handler)
(.setHandler server stats-handler)
(.setStopTimeout server a-minute)
(.setStopAtShutdown server true)))
(def app
(-> routes
wrap-reload))
(defn -main [& args]
(run-jetty app {:port 3000 :configurator conf :join? false}))
我将router/core.clj
服务器作为典型的(ns com.lapots.platform.web.router.core
(:require [compojure.core :refer [defroutes GET ANY]]
[liberator.core :refer [defresource resource]]
[ring.util.response :as resp]))
(defresource rest-handler
:handle-ok "rest response"
:etag "fixed-etag"
:available-media-types ["text/html"])
(defn wrapped-file-response [request]
(println "Attempt to read index.html")
(resp/resource-response "index.html" {:root "resources"}))
(defroutes routes
(GET "/" request rest-handler)
(GET "/home" request wrapped-file-response))
任务启动
jetty
但它无法解析gradle
文件。 (task startServer(dependsOn: classes, type: JavaExec) {
main = 'com.lapots.platform.web.core'
classpath = sourceSets.main.runtimeClasspath
}
会返回正确的index.html
消息。
如何为/
指定rest response
页面的路径?
答案 0 :(得分:1)
您没有显示build.gradle
,因此我无法确定您的类路径的配置方式。如果您使用默认值,那么问题是您的index.html
文件在类路径上不可用,因为它应该在${rootDir}/src/main/resources
下(这是应该包含在的资源/非代码文件的默认位置)当resources
ring.util.response/resource-response
配置为:root
时,resource
子目录中的{class}}。
因此,您的index.html
应位于以下路径下:${rootDir}/src/main/resources/resources/index.html
。