2012-08-13 89 views
0

我正在運行JBoss 4.2.3.GA(無法更改此版本)和Java 6.我正在嘗試部署JAR文件。在它內部,我試圖連接到一個Web服務,但得到錯誤,「無法加載Java類型:org.mainco.bsorg.BusinessServiceFaultException」,即使有問題的類在我部署的JAR文件中到服務器。我認爲有一些類加載器問題,但不知道從哪裏開始尋找。我用來連接的Java代碼爲什麼當類在我的JAR文件中時,我無法加載類?

final OrganizationService service = new OrganizationService(wsdl, qname);   
service.getOrganizationServicePort() 

我生成使用下面的Maven插件我的Web服務客戶端代碼......

 <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>jaxws-maven-plugin</artifactId> 
      <executions> 
       <execution> 
        <goals> 
         <goal>wsimport</goal> 
        </goals> 
        <configuration> 
         <wsdlUrls> 
          <wsdlUrl>${wsdl.url}</wsdlUrl> 
         </wsdlUrls> 
         <sourceDestDir>${basedir}/src/main/java</sourceDestDir> 
         <packageName>org.mainco.bsorg</packageName> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

,我有這些依賴...

<dependency> 
     <groupId>org.apache.axis</groupId> 
     <artifactId>axis</artifactId> 
     <version>1.4</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.xml</groupId> 
     <artifactId>jaxrpc-api</artifactId> 
     <version>1.1</version> 
    </dependency> 

以下是例外。任何想法,我需要開始挖掘?

2012-08-13 12:45:02,522 ERROR [org.quartz.core.ErrorLogger] Job (default.job.0.1344875788431 threw an exception. 
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: javax.ejb.EJBTransactionRolledbackException: Cannot load java type: org.mainco.bsorg.BusinessServiceFaultException] 
     at org.quartz.core.JobRunShell.run(JobRunShell.java:214) 
     at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520) 
* Nested Exception (Underlying Cause) --------------- 
javax.ejb.EJBTransactionRolledbackException: Cannot load java type: org.mainco.bsorg.BusinessServiceFaultException 
     at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87) 
     at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130) 
     at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 
     at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 
     at org.jboss.ejb3.mdb.MessagingContainer.localInvoke(MessagingContainer.java:249) 
     at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery(MessageInflowLocalProxy.java:268) 
     at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke(MessageInflowLocalProxy.java:138) 
     at $Proxy80.execute(Unknown Source) 
     at org.jboss.resource.adapter.quartz.inflow.QuartzJob.execute(QuartzJob.java:57) 
     at org.quartz.core.JobRunShell.run(JobRunShell.java:203) 
     at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520) 
Caused by: org.jboss.ws.WSException: Cannot load java type: org.mainco.bsorg.BusinessServiceFaultException 
     at org.jboss.ws.metadata.umdm.FaultMetaData.getJavaType(FaultMetaData.java:151) 
     at org.jboss.ws.core.jaxws.DynamicWrapperGenerator.generate(DynamicWrapperGenerator.java:139) 
     at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilder.addFault(JAXWSMetaDataBuilder.java:324) 
     at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilder.processWebMethod(JAXWSMetaDataBuilder.java:797) 
     at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilder.processWebMethods(JAXWSMetaDataBuilder.java:891) 
     at org.jboss.ws.metadata.builder.jaxws.JAXWSClientMetaDataBuilder.rebuildEndpointMetaData(JAXWSClientMetaDataBuilder.java:300) 
     at org.jboss.ws.core.jaxws.spi.ServiceDelegateImpl.getPortInternal(ServiceDelegateImpl.java:271) 
     at org.jboss.ws.core.jaxws.spi.ServiceDelegateImpl.getPort(ServiceDelegateImpl.java:202) 
     at javax.xml.ws.Service.getPort(Service.java:143) 
     at org.mainco.bsorg.OrganizationService.getOrganizationServicePort(OrganizationService.java:56) 
     at org.mainco.subco.orgsclient.quartz.UpdateOrgsJob.execute(UpdateOrgsJob.java:49) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112) 
     at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166) 
     at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 
     at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 
     at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47) 
     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 
     at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126) 
     ... 11 more 
Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.mainco.bsorg.BusinessServiceFaultException 
     at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:212) 
     at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:521) 
     at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
     at org.jboss.wsf.common.JavaUtils.loadJavaType(JavaUtils.java:143) 
     at org.jboss.ws.metadata.umdm.FaultMetaData.getJavaType(FaultMetaData.java:138) 

編輯:我部署JAR文件到$ JBOSS_HOME /服務器/ default/deploy目錄。 JAR文件包含一個我想運行的Quartz作業,這就是爲什麼我將它保存到這個目錄。

回答

0

檢查您擁有的jar是否是正確的版本,並且如果您在jboss lib文件夾中有該jar文件(這裏是C:\ jboss-4.2.3.GA \ server \ seam \ lib) * seam =您正在使用的個人資料的名稱

相關問題