Apache 轴管理客户端进程 - 401 错误

问题描述 投票:0回答:0

org.apache.axis.client.AdminClient.process()
是做什么的? 调用此功能时是否在幕后发生任何身份验证/授权?

我们有一个使用

Apache Axis 1
构建的基于 SOAP 的遗留 Web 服务。在应用程序启动时,Web 服务尝试使用 AdminClient.process() 自动部署。在我们的客户实施 sso 之前一切正常,现在 soap 服务抛出以下异常。

AxisFault
faultCode: {http://xml.apache.org/axis/}HTTP
faultSubcode: 
faultString: (401)401 
faultActor: 
faultNode: 
faultDetail: 
{}:return code:  401
HTTP  Status 401 – Unauthorized: The request has not been applied because it lacks valid authentication credentials for the target resource. VMware tc Runtime 9.0.65.A.RELEASE&lt
{http://xml.apache.org/axis/}HttpErrorCode:401

(401)401 
at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:744)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at org.apache.axis.client.AdminClient.process(AdminClient.java:439)
at org.apache.axis.client.AdminClient.process(AdminClient.java:404)
at org.apache.axis.client.AdminClient.process(AdminClient.java:410)
at org.apache.axis.client.AdminClient.process(AdminClient.java:320)

显然 SSO 配置不正确。但是 adminClient.process(String[] arg0)) 在内部做了什么?为什么它在仅调用 http url 时抱怨身份验证?

Java代码:

AdminClient ac = new AdminClient();
    String result = ac.process(
        new String[] {
            "-p" + API_PORT,
            "-l"+API_PROTOCOL+"://"+API_HOST+":"
                + API_PORT
                + "/"+CONTEXT+"/axis/AdminService",
            deploymentdescriptorfile });

代码部署在VMware TC服务器

java tomcat soap http-status-code-401 apache-axis
© www.soinside.com 2019 - 2024. All rights reserved.