当前位置: 首页 > 知识库问答 >
问题:

Rampart的Spring Boot和Axis2客户端运行时问题

严琨
2023-03-14

我正在尝试使用Axis 2客户端与基于肥皂的Web服务一起工作。我使用Rampart 1.7.1进行WSO身份验证。在我使用axis2tools创建存根代码后,我将jar文件安装到maven存储库中,并将它们用作pom.xml文件中的依赖项。我还为其余应用程序使用Spring启动,我将生成的库用作肥皂客户端api。

在开发环境中一切都很好,我可以使用Web服务。当我使用

mvn spring-boot:run

它工作得很好,从UI到webservice,再到后端(端到端),webservice通信良好。

当我使用

java -jar target/fatjar.jar

当我向web服务发送请求时,我在控制台收到以下错误:

2017-11-17 16:00:35.140  WARN 31114 --- [nio-8080-exec-2] o.a.axis2.deployment.AxisConfigBuilder   : Unable to instantiate deployer org.apache.axis2.deployment.ServiceDeployer; see debug logs for more details
2017-11-17 16:00:35.161  INFO 31114 --- [nio-8080-exec-2] o.a.axis2.deployment.DeploymentEngine    : No services directory was found under /home/mehdi/Workspace/EclipseWS/src/main/resources/axis.
2017-11-17 16:00:35.179  INFO 31114 --- [nio-8080-exec-2] o.a.axis2.deployment.ModuleDeployer      : Deploying module: rampart-1.7.1 - file:/home/mehdi/Workspace/EclipseWS/src/main/resources/axis/modules/rampart-1.7.1.mar
2017-11-17 16:00:35.185 ERROR 31114 --- [nio-8080-exec-2] o.a.axis2.deployment.ModuleDeployer      : The rampart-1.7.1.jar module, which is not valid, caused The /home/mehdi/Workspace/EclipseWS/target/cybersourceClient-0.0.1-SNAPSHOT.jar!/BOOT-INF/lib/rampart-1.7.1.jar file cannot be found.

org.apache.axis2.AxisFault: The /home/mehdi/Workspace/EclipseWS/target/cybersourceClient-0.0.1-SNAPSHOT.jar!/BOOT-INF/lib/rampart-1.7.1.jar file cannot be found.
    at org.apache.axis2.deployment.repository.util.DeploymentFileData.setClassLoader(DeploymentFileData.java:118) [axis2-kernel-1.7.1.jar!/:1.7.1]
    at org.apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.java:133) ~[axis2-kernel-1.7.1.jar!/:1.7.1]
    at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:144) [axis2-kernel-1.7.1.jar!/:1.7.1]
    at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:585) [axis2-kernel-1.7.1.jar!/:1.7.1]
    at org.apache.axis2.deployment.RepositoryListener.loadClassPathModules(RepositoryListener.java:222) [axis2-kernel-1.7.1.jar!/:1.7.1]

使用“mvn spring boot:run”时的同一行是

2017-11-17 16:13:14.270  WARN 7823 --- [nio-8080-exec-9] o.a.axis2.deployment.AxisConfigBuilder   : Unable to instantiate deployer org.apache.axis2.deployment.ServiceDeployer; see debug logs for more details
2017-11-17 16:13:14.286  INFO 7823 --- [nio-8080-exec-9] o.a.axis2.deployment.DeploymentEngine    : No services directory was found under /home/mehdi/Workspace/EclipseWS/src/main/resources/axis.
2017-11-17 16:13:14.301  INFO 7823 --- [nio-8080-exec-9] o.a.axis2.deployment.ModuleDeployer      : Deploying module: rampart-1.7.1 - file:/home/mehdi/Workspace/EclipseWS/src/main/resources/axis/modules/rampart-1.7.1.mar
2017-11-17 16:13:14.304  INFO 7823 --- [nio-8080-exec-9] o.a.axis2.deployment.ModuleDeployer      : Deploying module: rampart-1.7.1 - file:/home/mehdi/.m2/repository/org/apache/rampart/rampart/1.7.1/rampart-1.7.1.jar

请注意,它在以下情况下失败:

...The rampart-1.7.1.jar module, which is not valid,...

我不知道为什么maven启动可以正常工作,但java-jar抛出异常。

共有1个答案

龚博涛
2023-03-14

根据Spring Boot留档(进一步配置部分)在这里我需要添加壁垒库到spring-boot-maven-plugin解压列表如下:

<plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <requiresUnpack>
                        <requiresUnpack>
                            <groupId>org.apache.rampart</groupId>
                            <artifactId>rampart</artifactId>
                        </requiresUnpack>
                    </requiresUnpack>
                </configuration>
</plugin>
 类似资料:
  • 我正在尝试使用Axis2构建的web服务,因此我遵循以下示例创建客户机代码。 这个错误的原因是什么?

  • 问题内容: 我想记录一个axis2客户端发出的所有请求/响应。我试图在http://code.google.com/support/bin/answer.py?hl=zh_CN&answer=15137中创建一个称为describer 的文件,但没有成功(我没有日志文件)。 请求是通过https发出的,我不确定是否重要。我试过了 和 没有成功。 问题答案: 对于SOAP消息的Axis2客户端日志记

  • 当我将此添加到我的项目父pom时: 项目运行失败如下: 当我删除依赖项时,项目将成功运行。 我只是想添加一个Eureka客户端到注册中心,但它不起作用。但是,当我使用Spring初始化器创建一个新项目时,它工作得很好。 每个答案都有帮助。 完整的项目如下:

  • 我已经尝试了这篇简单的教程https://spring.io/guides/gs/consource-web-service/,它起作用了。 然后尝试连接到另一个SOAP服务,使用一个附加的和扩展的客户端类。似乎这两个客户机类都使用了相同的-class,这使得我首先添加的一个失败(未知的jaxb-context等)。如何确保客户端类使用正确的-class?

  • 我构建了一个实现Selenium驱动程序的ASP.NET web应用程序。我的问题是所有的测试都在本地机器上运行良好,但是在部署并作为客户端登录到我的网站并开始测试之后,驱动程序既不在服务器机器上也不在客户端机器上启动或做出任何反应 日志文件的一些 #软件:Microsoft Internet Information Services 8.5#版本:1.0#日期:2017-08-15 02:24: