简体   繁体   English

如何禁用WebApplicationInitializer类的Servlet类路径扫描,但仍显式使用自己的实例?

[英]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.

相关问题 如何不允许对所有类使用我自己的注释,而不是对实现具体接口的类进行使用 - How can I disallow to use my own annotation for all classes instead of classes implementing concrete interface 如何导入自己的Java类以在JSP页面中使用? 它们应该位于哪个目录中? 如何将它们放在CLASSPATH上? - How do I import my own java classes for use in JSP pages? In what directory should they reside? How do I put them on the CLASSPATH? 在Servlet(Java / Tomcat / Linux)中使用我自己的类 - Use my own classes in a servlet (Java/Tomcat/Linux) Android:如何在自己的类中使用为“活动”定义的方法? - Android: How can I use methods defined for Activities in my own classes? 使用 JAX-WS 时如何使用我自己的自定义客户端类? - How can I use my own custom client classes when using JAX-WS? 如何使用Gradle将类添加到classpath? - How can i add classes to classpath with gradle? 当我在Envers中拥有自己的侦听器时,仍可以使用AuditReader吗? - Can I still use AuditReader when I have my own listeners in Envers? 我可以将请求从Kong服务器转发到我自己的servlet吗? - Can I forward the request from Kong server to my own servlet? Java Servlet(Tomcat 9)中的WebSocket无需类路径扫描 - WebSocket in Java Servlet (Tomcat 9) without classpath scanning 如何在 Java Servlet 上触发 OAuth/OpenID 身份验证并向用户添加我自己的角色? - How can I trigger OAuth/OpenID authentication on a Java Servlet and add my own roles to the user?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM