![](/img/trans.png)
[英]How to convert these spring security xml configuration to java configuration
[英]How to Convert XML Configuration to Java
我正在使用Les Hazlewood的實現創建一個自定義的休息異常處理程序。 我的spring boot應用程序使用java類作為配置而不是xml配置。 他使用xml配置,但我想將其轉換為java類配置。
<bean id="restExceptionResolver" class="com.stormpath.spring.web.servlet.handler.RestExceptionHandler">
<property name="order" value="100"/>
<property name="messageConverters">
<list>
<ref bean="jacksonHttpMessageConverter"/>
</list>
</property>
<property name="errorResolver">
<bean class="com.stormpath.spring.web.servlet.handler.DefaultRestErrorResolver">
<property name="localeResolver" ref="localeResolver"/>
<property name="defaultMoreInfoUrl" value="mailto:support@mycompany.com"/>
<property name="exceptionMappingDefinitions">
<map>
<!-- 404 -->
<entry key="com.stormpath.blog.spring.mvc.rest.exhandler.UnknownResourceException" value="404, _exmsg"/>
<!-- 500 (catch all): -->
<entry key="Throwable" value="500"/>
</map>
</property>
</bean>
</property>
</bean>
如何將該xml轉換為Java類?
我不確定你的困難是什么。 XML配置的等效Java配置如下所示:
import java.util.Arrays;
import java.util.Map;
import com.stormpath.spring.web.servlet.handler.DefaultRestErrorResolver;
import com.stormpath.spring.web.servlet.handler.RestExceptionHandler;
@Configuration
public class Configuration {
@Autowired
Object jacksonHttpMessageConverter;
@Autowired
Object localeResolver;
@Bean(name="restExceptionResolver")
public RestExceptionHandler restExceptionHandler(){
RestExceptionHandler handler = new RestExceptionHandler();
handler.setOrder("100");
handler.setMessageConverters(Arrays.asList(jacksonHttpMessageConverter));
handler.setErrorResolver(resolver());
}
@Bean(name="resolver")
public DefaultRestErrorResolver resolver() {
DefaultRestErrorResolver resolver = new DefaultRestErrorResolver();
resolver.setLocaleResolver(localeResolver);
resolver.setDefaultMoreInfoUrl("mailto:support@mycompany.com");
Map<String, Object> exceptionMappingDefinitions = new HashMap<>();
exceptionMappingDefinitions.put("com.stormpath.blog.spring.mvc.rest.exhandler.UnknownResourceException", "404, _exmsg");
exceptionMappingDefinitions.put("Throwable", "500");
resolver.setExceptionMappingDefinitions(exceptionMappingDefinitions);
return resolver;
}
}
隨時適應和糾正錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.