You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.8 KiB

package com.github.zxbu.webdavteambition;
import com.github.zxbu.webdavteambition.filter.ErrorFilter;
import com.github.zxbu.webdavteambition.store.AliYunDriverFileSystemStore;
import net.sf.webdav.WebdavServlet;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import java.util.LinkedHashMap;
import java.util.Map;
@SpringBootApplication
@EnableScheduling
public class WebdavTeambitionApplication {
public static void main(String[] args) {
SpringApplication.run(WebdavTeambitionApplication.class, args);
}
@Bean
public ServletRegistrationBean<WebdavServlet> myServlet(){
ServletRegistrationBean<WebdavServlet> servletRegistrationBean = new ServletRegistrationBean<>(new WebdavServlet(), "/*");
Map<String, String> inits = new LinkedHashMap<>();
inits.put("ResourceHandlerImplementation", AliYunDriverFileSystemStore.class.getName());
// inits.put("ResourceHandlerImplementation", LocalFileSystemStore.class.getName());
inits.put("rootpath", "./");
inits.put("storeDebug", "1");
servletRegistrationBean.setInitParameters(inits);
return servletRegistrationBean;
}
@Bean
public FilterRegistrationBean disableSpringBootErrorFilter() {
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
filterRegistrationBean.setFilter(new ErrorFilter());
filterRegistrationBean.setEnabled(true);
return filterRegistrationBean;
}
}