我试图在spring引导应用程序中初始化milton,使其具有path \\localhost@8080\webdav\DavWWWRoot而不是\\localhost@8080\DavWWWRoot我的配置:
@Configuration
open class MiltonBeanConfig {
@Bean
open fun someFilterRegistration(): FilterRegistrationBean<Filter> {
val registration: FilterRegistrationBean<Filter> = FilterRegistrationBean()
registration.filter = getMiltonFilter()
registration.setName("MiltonFilter")
registration.addUrlPatterns("/webdav/*")
registration.addInitParameter("resource.factory.class", "io.milton.http.annotated.AnnotationResourceFactory")
registration.addInitParameter("controllerPackagesToScan", "ru.sms.wdsample.webdav.controller")
registration.addInitParameter("milton.configurator", "ru.sms.wdsample.webdav.configuration.MiltonConfig")
registration.order = 1
return registration
}
open fun getMiltonFilter(): Filter {
return MiltonFilter()
}
}MiltonConfig
class MiltonConfig() : DefaultMiltonConfigurator() {
override fun build() {
builder.securityManager = NullSecurityManager()
builder.contextPath = "/webdav/"
super.build()
}
}我可以从调试器中看出我得到了什么根和子,但是有错误:
2022-02-03 21:24:10.786 INFO 35736 --- [nio-8080-exec-1] io.milton.http.HttpManager : OPTIONS :: localhost:8080///webdav start
2022-02-03 21:24:22.091 INFO 35736 --- [nio-8080-exec-1] io.milton.http.HttpManager : OPTIONS :: localhost:8080///webdav finished 11305ms, Status:HTTP/1.1 404 Not Found, Length:null我犯了什么错?
发布于 2022-02-05 09:31:34
不知道,也许这不是个好办法,但这是我的工作。
class UrlAdapterImpl : UrlAdapter {
override fun getUrl(request: Request): String {
val s = HttpManager.decodeUrl(request.absolutePath)
return if (s.contains("/webdav")) s.replace("/webdav", "") else s
}
}https://stackoverflow.com/questions/70976481
复制相似问题