java.lang.NoClassDefFoundError:com / sun / istack / localization / Localizable?

我尝试通过tomcat7运行我的项目。 通过jax ws maven插件生成我的webservices的wsdl文件(并且它由成功生成)但是尝试在浏览器中查看wsdl文件但不是结果。

我试图通过tomcat7服务器运行我的项目但是这个错误出现了,我没有解决这个问题我的错误:

août 06, 2013 12:08:09 PM org.apache.catalina.core.AprLifecycleListener init INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.7.0_21\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Program Files\MiKTeX 2.9\miktex\bin;%CommonProgramFiles%\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MATLAB\R2010a\runtime\win32;C:\Program Files\MATLAB\R2010a\bin;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Orant\bin;C:\Centrun;C:\LHS\BSCS_iX_R2_Demo;C:\LHS\BSCS_iX_R2_Demo\bin\win32;C:\LHS\BSCS_iX_R2_Demo\3pp\win32;C:\LHS\BSCS_iX_R2_Demo\TAO1.3aP12_WinXP\ACE_wrappers\bin;C:\LHS\BSCS_iX_R2_Demo\TAO1.3aP12_WinXP\ACE_wrappers\lib;C:\LHS\BSCS_iX_R2_Demo\jdk1.5.0_06\bin;C:\Program Files\apache-maven-3.1.0\bin;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Users\sayed\Desktop\eclipse\eclipse;;. août 06, 2013 12:08:09 PM org.apache.tomcat.util.digester.SetPropertiesRule begin WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:BSCSwebservices' did not find a matching property. août 06, 2013 12:08:09 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-bio-8080"] août 06, 2013 12:08:09 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["ajp-bio-8009"] août 06, 2013 12:08:09 PM org.apache.catalina.startup.Catalina load INFO: Initialization processed in 1005 ms août 06, 2013 12:08:09 PM org.apache.catalina.core.StandardService startInternal INFO: Démarrage du service Catalina août 06, 2013 12:08:09 PM org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet Engine: Apache Tomcat/7.0.42 août 06, 2013 12:08:10 PM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(C:\Users\sayed\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\BSCSwebservices\WEB-INF\lib\servlet-api-2.5.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. août 06, 2013 12:08:13 PM org.apache.catalina.core.ApplicationContext log INFO: Loading Spring root WebApplicationContext août 06, 2013 12:08:14 PM org.apache.catalina.core.ApplicationContext log SEVERE: StandardWrapper.Throwable java.lang.NoClassDefFoundError: com/sun/istack/localization/Localizable at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2895) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1173) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1681) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) at com.sun.xml.ws.transport.http.servlet.WSSpringServlet.init(WSSpringServlet.java:48) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.ClassNotFoundException: com.sun.istack.localization.Localizable at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) ... 21 more août 06, 2013 12:08:14 PM org.apache.catalina.core.StandardContext loadOnStartup SEVERE: La servlet /BSCSwebservices a généré une exception "load()" java.lang.ClassNotFoundException: com.sun.istack.localization.Localizable at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2895) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1173) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1681) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) at com.sun.xml.ws.transport.http.servlet.WSSpringServlet.init(WSSpringServlet.java:48) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) 

任何建议,解决方案……谢谢

添加此类com.sun.istack.localization.Localizable即将到来的jar。

同样存在于jaxb-core-2.2.X and jaxb-impl-2.2.X.

尝试在服务器/ lib中添加这些jar或将它们与war文件捆绑在一起。

谢谢

我在很久以前解决了改变maven deps的问题:

  com.sun.xml.ws jaxws-rt version   com.sun.istack istack-commons-runtime    

com.sun.istack.localization.Localizable.class绝对在jaxb-core-2.2.11.jar

要正确运行Web应用程序,需要在pom.xml上添加:
com.sun.xml.ws jaxws-rt 2.2.8
这是针对您的web.xml上声明的列表器:
com.sun.xml.ws.transport.http.servlet.WSServletContextListener

然后,在<%TOMCAT_HOME%>/endorsed (如果你没有它的情况下创建它)下的librairies:

  1. JAXB的IMPL-2.2.11.jar
  2. JAXB的核心2.2.11.jar
  3. JAXB的API-2.2.3.jar
  4. STAX-API 1.0-2.jar
  5. 激活1.1.jar
  6. JAXWS-API-2.2.3.jar
  7. SAAJ-API-1.3.2.jar
  8. javax.annotation中-3.1-b35.jar
  9. JSR181-API-1.0-MR1.jar

在尝试构建在Tomcat上运行的Soap Web服务时,我遇到了许多问题,为此我需要许多maven依赖项。 对我有用的配置如下:

    com.sun.xml.ws jaxws-rt 2.2.8    javax.servlet javax.servlet-api 3.1.0 provided    com.sun.xml.bind jaxb-core 2.2.7    com.sun.xml.stream.buffer streambuffer 1.5.3    com.sun.xml.bind jaxb-impl 2.2.7    com.sun.xml.ws policy 2.3.1    org.glassfish.gmbal gmbal-api-only 3.2.0-b003    org.glassfish.ha ha-api 3.1.9   

用这些替换你的maven依赖,然后重新尝试。 我希望这也适合你

问候