2013-08-06 11 views
6

私はtomcat7でプロジェクトを実行しようとします。私のwebservicesのwsdlファイルの生成を、jax ws maven plugin(そしてそれは成功によって生成された)によって行いますが、wsdlファイルをブラウザで表示しようとしましたが、結果は表示されませんでした。java.lang.NoClassDefFoundError:com/sun/istack/localization/Localizable?

私はtomcat7サーバによって私のプロジェクトを実行しようとしたが、このエラーが現れ、私はこの問題 への解決策をhaventはthsi私のエラー:

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) 

任意の提案、ソリューション... おかげ

答えて

13

は、このクラスcom.sun.istack.localization.Localizableが共同でどこからjarファイルを追加します。明同じよう

は、サーバー/ libに、これらのjarファイルを追加またはWARファイルでそれらを束ねjaxb-core-2.2.X and jaxb-impl-2.2.X.

てみに存在しています。

おかげ

+0

は、私は今これを追加しましたが、私は同じエラーが –

+0

登場のwsgenによって生成された私のWSDLファイルのURLを記述するときにあなたが試したオプション??? – saurav

+0

私はこのサーバをサーバ/ライブラリ –

4

私はMavenのDEPSを変える時間前に解決:

<dependency> 
    <groupId>com.sun.xml.ws</groupId> 
    <artifactId>jaxws-rt</artifactId> 
    <version>version</version> 
    <exclusions> 
     <exclusion> 
      <groupId>com.sun.istack</groupId> 
      <artifactId>istack-commons-runtime</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 
+0

感謝しかし何の結果、私が試したが、同じエラー –

0

com.sun.istack.localization.Localizable.classは間違いなくjaxb-core-2.2.11.jar

に適切にあなたのウェブapllicationをruningてのために、あなたはpom.xmlに追加する必要がありますされています
<dependency> <groupId>com.sun.xml.ws</groupId> <artifactId>jaxws-rt</artifactId> <version>2.2.8</version> </dependency>
これはあなたのリスナーがあなたに宣言したものですweb.xml
<listener> <listener-class> com.sun.xml.ws.transport.http.servlet.WSServletContextListener </listener-class> </listener>

その後、<%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
0

構築しようとしたとき、私は顔多くの問題を持っていますTomcat上で動作するSoap Webサービスです。そのためには、多くの依存関係が必要でした。私のために働いていた設定は、次のとおりです:

<dependencies> 
    <!-- jax-ws maven dependency --> 
    <dependency> 
     <groupId>com.sun.xml.ws</groupId> 
     <artifactId>jaxws-rt</artifactId> 
     <version>2.2.8</version> 
    </dependency> 
    <!-- servlet provided by tomcat --> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>javax.servlet-api</artifactId> 
     <version>3.1.0</version> 
     <scope>provided</scope> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-core --> 
    <dependency> 
     <groupId>com.sun.xml.bind</groupId> 
     <artifactId>jaxb-core</artifactId> 
     <version>2.2.7</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/com.sun.xml.stream.buffer/streambuffer --> 
    <dependency> 
     <groupId>com.sun.xml.stream.buffer</groupId> 
     <artifactId>streambuffer</artifactId> 
     <version>1.5.3</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl --> 
    <dependency> 
     <groupId>com.sun.xml.bind</groupId> 
     <artifactId>jaxb-impl</artifactId> 
     <version>2.2.7</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/com.sun.xml.ws/policy --> 
    <dependency> 
     <groupId>com.sun.xml.ws</groupId> 
     <artifactId>policy</artifactId> 
     <version>2.3.1</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/org.glassfish.gmbal/gmbal-api-only --> 
    <dependency> 
     <groupId>org.glassfish.gmbal</groupId> 
     <artifactId>gmbal-api-only</artifactId> 
     <version>3.2.0-b003</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/org.glassfish.ha/ha-api --> 
    <dependency> 
     <groupId>org.glassfish.ha</groupId> 
     <artifactId>ha-api</artifactId> 
     <version>3.1.9</version> 
    </dependency> 
</dependencies> 

これらを使ってあなたの依存関係を置き換えてから、もう一度試してみてください。私はこの作品を願ってのためにあなたも

よろしく