[英]How can I disable Servlet classpath scanning for WebApplicationInitializer classes but still explictly use my own instance?
As per this question 根据这个问题
How to disable Servlet 3.0 scanning and auto loading of components 如何禁用Servlet 3.0扫描和自动加载组件
I disabled classpath scanning for WebApplicationInitializer classes by setting metadata-complete="false"
in my web.xml <web-app>
element as well as adding a tag <absolute-ordering/>
within my <web-app>
tag. 通过在web.xml
<web-app>
元素中设置metadata-complete="false"
以及在<web-app>
标记内添加标记<absolute-ordering/>
,来禁用WebApplicationInitializer类的类路径扫描。
Now no instances of WebApplicationInitializer run and it appears WebApplicationInitializer is the only way to programmatically add servlets/filters/listeners instead of in web.xml. 现在,没有任何WebApplicationInitializer实例运行,并且WebApplicationInitializer似乎是以编程方式添加servlet /过滤器/侦听器的唯一方法,而不是在web.xml中。
I want to disable all WebApplicationInitializer classes except my own which will have a bunch of entries. 我想禁用所有WebApplicationInitializer类,但我自己的类除外,该类将具有大量条目。 How can I configure this?
我该如何配置?
FYI I tried adding <absolute-ordering>
like this 仅供参考,我尝试像这样添加
<absolute-ordering>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
metadata-complete="false">
<absolute-ordering>
<name>com.company.project.MySuperSpecialWebAppInitializer</name>
</absolute-ordering>
But it did not run my WebApplicationInitializer class. 但是它没有运行我的WebApplicationInitializer类。
是不是metadata-complete =“ true”,而不是“ false”?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.