簡體   English   中英

Glassfish 4.1 LogFactory 和 WSSElementFactory NoClassDefFoundError

[英]Glassfish 4.1 LogFactory and WSSElementFactory NoClassDefFoundError

當我在 Glassfish 4.1 服務器上運行我的 rest api 點時,我面臨NoClassDefFoundError即使我分別使用commons-logging作為依賴項發送耳朵,即使庫在WEB-INF\\lib下解壓縮

而且看起來我沒有遇到使用 Glassfish 4.0 的問題

任何想法如何解決這個問題?

未找到第LogFactory

javax.xml.ws.WebServiceException: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at com.sun.xml.wss.jaxws.impl.SecurityClientTube.processRequest(SecurityClientTube.java:252)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877)
at com.sun.xml.ws.client.Stub.process(Stub.java:463)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:191)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:92)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:161)

然后WSSElementFactory不是太

javax.xml.ws.WebServiceException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.xml.ws.security.opt.impl.util.WSSElementFactory
at com.sun.xml.wss.jaxws.impl.SecurityClientTube.processRequest(SecurityClientTube.java:252)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877)
at com.sun.xml.ws.client.Stub.process(Stub.java:463)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:191)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:92)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:161)

也許我的答案有點過時了,但我在 Glassfish 4.1.1 上遇到了同樣的問題,並通過更新 Metro 庫設法解決了這個問題

這是一個指令:

  1. 下載並解壓https://maven.java.net/content/repositories/releases//org/glassfish/metro/metro-standalone/2.3.1/metro-standalone-2.3.1.zip
  2. glassfish/modules文件夾中刪除(備份)一些文件:
  • jaxb-extra-osgi.jar
  • jaxb-osgi.jar
  • stax2-api.jar
  • webservices-extra-jdk-packages.jar
  • webservices-osgi.jar
  • woodstox-core-asl.jar
  1. 用解壓后的 zip 中的Metro/osgi內容替換它們
  2. 停止玻璃魚
  3. 刪除domain1/generateddomain1/osgi-cache文件夾的內容
  4. 開始 Glassfish

它對我有用,兩個錯誤都消失了

希望它會幫助某人

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM