Axis 1.1 클라이언트가 Axis2 웹 서비스 끝점과 대화 할 수 있습니까? 웹 서비스는 XML SOAP 메시지를 서비스의 WSDL에 지정된 스키마를 사용하여 앞뒤로 전달함으로써 작동하지만, Axis의 이러한 버전이이를 막을 수있는 다른 버전의 웹 서비스 스펙을 사용하는지 여부는 확실하지 않습니다. 말하기에서. 이견있는 사람?Axis 1.1 클라이언트가 Axis2 서비스와 대화 함
답변
좋아, Axis2 웹 서비스와 통신하기 위해 Axis 1.1을 사용하면 문제가 없다. Axis 1.1을 사용하여 스텁을 생성하고 Client 클래스를 만들고 테스트했습니다. Axis 1.1의 API는 이전 Axis 1.4에서 허용하는 것과 동일한 기능을 제공하지는 않지만 특히 웹 서비스 메서드 매개 변수가 nillable인지 minOccurs인지 지정할 수있는 ParameterDesc 클래스에서 제공되지만 내 호출은 정상적으로 작동하는 것처럼 보입니다 .
기본적으로 WSDL 정의를 사용하여 수행 할 수 있지만, Axis2는 Axis 1.1이 사용할 수없는 새로운 기능을 Axis 1.1이 수용 할 수 있는지 여부를 확신하지 못합니다. API ...
오, 그리고 마지막으로 한 메모, 내 요청에 SOAP 1.1 스텁을 사용해야했습니다. 나는 왜 내 응답이 SOAP 1.2로 돌아 왔는지를 100 % 확신 할 수는 없지만 거기에 당신이 가지고있다.
일반적으로 귀하의 이해가 정확합니다. 클라이언트가 WSDL 설명을 따르는 경우 웹 서비스에 접속할 수 있어야합니다.
그러나 Axis1과 Axis2는 기본적으로 호환되지 않는 다른 인코딩을 사용합니다.
Axis1은 RPC (더 이상 사용되지 않음)를 사용하고 Axis2는 doc/lit를 사용합니다.
Axis1 서버와 통신하는 Axis2 클라이언트는 작동하지 않습니다.
반대의 경우 (그리고 게시물에서 묻는 것) 나는 정말로 확신하지 못합니다.
WSDL을 사용하여 스텁을 생성하려고 했습니까?
오류를 찾으셨습니까? 스텁 생성시 오류가 발생하지 않으면 시도해 볼 수 있다고 생각합니다.