当前位置: 首页 > 知识库问答 >
问题:

wildfly未从web加载类。xml

郤望
2023-03-14

我无法运行战争,因为我配置了所有的模块在野生苍蝇,和这个战争是运行良好的jboss 6与相同的web.xml配置,当我部署在野生苍蝇后所有的设置为迁移然后我得到class NotFind异常,因为我有几个servlet映射在web.xml

欲了解更多信息,请在下面找到

在Wildfly我得到下面异常:

这里是web.xml

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd“version=“2.5”

  <display-name>Test </display-name>
  <context-param>
    <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
    <param-value>messages</param-value>
  </context-param>
  <filter>
    <filter-name>exportFilter</filter-name>
    <filter-class>org.displaytag.filter.ResponseOverrideFilter</filter-class>
  </filter>
  <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter>
    <filter-name>messageFilter</filter-name>
    <filter-class>com.Test.us.web.MessageFilter</filter-class>
  </filter>
  <filter>
</web-app>

这是我的日志:

17:16:04,774 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC0000
01: Failed to start service jboss.undertow.deployment.default-server.default-hos
t./.UndertowDeploymentInfoService: org.jboss.msc.service.StartException in servi
ce jboss.undertow.deployment.default-server.default-host./.UndertowDeploymentInf
oService: java.lang.ClassNotFoundException: com.Test.us.web.MessageFilter fr
om [Module "deployment.TestRWD_JB60_Testing.war:main" from Service Module Lo
ader]
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoServi
ce.createServletConfig(UndertowDeploymentInfoService.java:933)
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoServi
ce.start(UndertowDeploymentInfoService.java:256)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(Se
rviceControllerImpl.java:1948) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceCont
rollerImpl.java:1881) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
java:1142) [rt.jar:1.8.0_40]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:617) [rt.jar:1.8.0_40]
        at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_40]
Caused by: java.lang.ClassNotFoundException: com.Test.us.web.MessageFilter f
rom [Module "deployment.TestRWD_JB60_Testing.war:main" from Service Module L
oader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:
213) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(Con
currentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(Concu
rrentClassLoader.java:408) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentCl
assLoader.java:389) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoad
er.java:134) [jboss-modules.jar:1.3.3.Final]
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoServi
ce.createServletConfig(UndertowDeploymentInfoService.java:724)
        ... 6 more


17:16:04,861 ERROR [org.jboss.as.controller.management-operation] (DeploymentSca
nner-threads - 2) JBAS014613: Operation ("deploy") failed - address: ([("deploym
ent" => "TestRWD_JB60_Testing.war")]) - failure description: {"JBAS014671: F
ailed services" => {"jboss.undertow.deployment.default-server.default-host./.Und
ertowDeploymentInfoService" => "org.jboss.msc.service.StartException in service
jboss.undertow.deployment.default-server.default-host./.UndertowDeploymentInfoSe
rvice: java.lang.ClassNotFoundException: com.Test.us.web.MessageFilter from
[Module \"deployment.TestRWD_JB60_Testing.war:main\" from Service Module Loa
der]
    Caused by: java.lang.ClassNotFoundException: com.Test.us.web.MessageFilt
er from [Module \"deployment.TestRWD_JB60_Testing.war:main\" from Service Mo
dule Loader]"}}
17:16:05,048 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS018
559: Deployed "TestRWD_JB60_Testing.war" (runtime-name : "TestRWD_JB60_T
esting.war")
17:16:05,052 INFO  [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBA
S014774: Service status report
JBAS014777:   Services which failed to start:      service jboss.undertow.deploy
ment.default-server.default-host./.UndertowDeploymentInfoService: org.jboss.msc.
service.StartException in service jboss.undertow.deployment.default-server.defau
lt-host./.UndertowDeploymentInfoService: java.lang.ClassNotFoundException: com.Test.us.web.MessageFilter from [Module "deployment.TestRWD_JB60_Testing.w
ar:main" from Service Module Loader]
- See more at: https://developer.jboss.org/message/929842#929842

共有1个答案

姬高扬
2023-03-14

好像你的班级com。测验我们网状物MessageFilter对于类加载器不可见。有两个选项可供你选择:

>

  • WEB-INF/lib/some中。jar

在自定义的WildFly模块中。在这种情况下,您必须将模块依赖项添加到部署中。模块依赖项可以在以下文件中定义:

  • 任一META-INF/MANIFEST. MF
  • 或在META-INF/jboss-deployment-structure.xml

jboss部署结构的示例内容。xml文件是:

<jboss-deployment-structure>
    <deployment>
        <dependencies>
            <module name="your.custom.module"/>
        </dependencies>
    </deployment>
</jboss-deployment-structure>

 类似资料:
  • 考虑下面的结构:代码> JBASS部署结构。ear的xml内部 鉴于此,我排除了default部署模块(第11行)和部署自定义位于文件夹或ear中。我还为子部署。 xerces类将从何处加载?从WildFly的默认模块或部署在中的自定义jar? 在子部署中添加路径依赖项的确切含义是什么?这会忽略主部署下的排除(即,org.apache.xerces)吗?

  • 我有多模块项目: api模块有my持久性作为一个依赖。我正在谈论的配置类应该从类路径中检测出来,这不是我忽略或错过的原因 在持久化模块中的包下配置类 ApiApplication类位于 需要帮忙吗?

  • 我刚刚开始使用composer进行依赖关系管理,我很难弄清楚我是如何不遵守psr-4进行自动加载的,所以我来这里寻求建议。我有一个生成随机值的类,它已经在packagist上了。项目结构如下(我已将composer.json文件标记为A和B): 项目总监 composer.jsonA composer.jsonB 最后是RlandValue.php文件,它声明了ejFrancis命名空间 当我运行

  • 我不熟悉使用composer和psr-0。我尝试了一个使用composer和psr-0的小应用程序。我已经使用名称空间加载了一个特定的类。当我使用composer vendor/autoload调用一个类时,我得到了“未找到类”错误。 我的composer.json文件:/var/www/html/silexapp/composer.json 我的作曲家供应商自动加载文件:/var/www/htm

  • 我有一个类,它实现了接口。类由system classloader加载,接口在第三方组件中定义,我认为第三方组件将接口加载到另一个类加载器(动态类加载器)中。 当我试图创建的新实例时,我得到的是的。我想这是因为它是由不同的类加载器加载的。 我尝试创建(与Guice使用的类似),然后从system类加载器加载类,并从另一个类加载器加载所有其他类,我认为这是用于的类加载器,但没有成功。 有办法绕过它吗

  • 我的简单Web服务器是Python3 SimpleHTTPRequest estHandler,它工作得很好。它在LAN机器的图片文件夹中运行,我已经使用浏览器对其进行了测试并输入了测试URL,例如:http://192.168.1.111:8000/2020-02-09/test.jpg 但是,毕加索不会加载相同的URL。它将通过“file://”加载本地图片。作为测试,我测试了一个Intern