java - Jetty.xml导入本地类

标签 java maven jetty maven-jetty-plugin

我有一个通过 Maven Jetty 插件运行的网络应用程序。

我使用 jetty.xml 文件配置它。当我想设置在 WebAppContext 中创建的自定义身份 validator 时,我的问题就出现了。 XML 配置如下所示:

<New id="webAppContext" class="org.eclipse.jetty.webapp.WebAppContext">
    <Set name="contextPath">/</Set>
    <Set name="copyWebDir">true</Set>
    <Set name="extractWAR">false</Set>
    </Set>
    <Get name="securityHandler">
        <Set name="authenticator">
            <New class="MY_CUSTOM_AUTHENTICATOR">
            </New>
        </Set>
    </Get>
</New>

当我运行上面的代码时,我得到“MY_CUSTOM_AUTHENTICATOR”类的 ClassNotFoundException 。我必须补充一点,该类存在于我启动 Jetty 的同一个 Maven 项目中。

为了让 Jetty 加载我的类,我必须执行“导入”语句吗?

谢谢。

最佳答案

您很可能需要将身份 validator 放在一个 Artifact 中,然后将其声明为 jetty maven 插件本身的依赖项。通过类加载器隔离,身份 validator 可能位于安全处理程序不可见的 Web 应用程序中。

关于java - Jetty.xml导入本地类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19518085/

相关文章:

java - Gretty,从存储库设置 "Module specified Libraries"

java - 嵌入式Jetty + ShiroFilter问题

maven-2 - 如何使用 Maven 2 Tomcat 插件运行 Tomcat 7?

java - 调试处理程序在最新的 Jetty 版本中已弃用,如何正确关闭?

java - 自定义 Canvas 对象不自动重绘

java - JSP和Spring MVC的多个复选框,如何获取值

java - 如何使用 Drive SDK 列出域中的所有 Google 文档?

java - 文件下载 SSLHandshakeException

java - 如何根据google java格式格式化代码

java - Maven 构建未在 Jenkins 上安排