作者:兄弟连教育 | 来源:互联网 | 2023-05-16 12:44
我在项目中的com.federal.server包下面写了一个FileService类,然后我新建了一个FileService的文件夹,里面新建了com\federal\server,把编译好的Fil
我在项目中的com.federal.server包下面写了一个FileService类,然后我新建了一个FileService的文件夹,里面新建了com\federal\server,把编译好的FileService.class放到了这个目录下,在WEB-INF文件夹,把services.xml放到额这个文件夹下,然后我用cmd命令生成FileService.aar,我把这个aar放到tomcat的axis2的services下面时,一直报错。
我的services.xml文件如下
FileService 例子
com.federal.server.FileService
报的错误信息如下:
org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:151)
at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81)
at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:597)
at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:330)
at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:227)
at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:324)
at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:64)
at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:71)
at org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:83)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:148)
... 12 more
[ERROR] The FileService.aar service, which is not valid, caused The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:151)
at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81)
at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:597)
at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:330)
at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:227)
at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:324)
at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:64)
at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:71)
at org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:83)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:148)
... 12 more
[INFO] org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
求指点啊,折腾一天了都,求指点!
3 个解决方案
org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\apache-tomcat-6.0.35\webapps\axis2\WEB-INF\services\FileService.aar
根据以上异常信息 应该是 你打包成.aar 文件的时候 所需类或配置文件没有全部打包好,axis2去需找service.xml的时候 在你指定的.arr 文件当中找不到!
建议使用Axis2的 tool : axis2-eclipse-service-plugin-1.6.2 (这是Axis2 最新版本的插件)生成arr文件。
另外提醒一点噢 ,在你建立一个webservice方法的时候 需要生成相应的文件 eg.service.xml,build.xml
也就是使用Axis2的插件 WSDL2Java生成服务端代码(也可以使用命令行的形式:使用wsdl2java实例demo:%AXIS2_HOME%\bin\wsdl2java.bat -uri D:\workspace\WebServiceDemo\WebRoot\invokeWebservices.wsdl -p dmx.webservice.info -o D:\workspace\WebServiceDemo\ -s -wv 1.6.2 -ss -sd),再进行.arr包打包!
实在不知道是怎么回事 我就给你demo ,直接Q我即可 654979493 或 邮件我,