Expand my Community achievements bar.

July 31st AEM Gems Webinar: Elevate your AEM development to master the integration of private GitHub repositories within AEM Cloud Manager.
SOLVED

AEM 6.3 integration with Apache CXF

Avatar

Level 1

Hi,

We are migrating from AEM ver 5.6.1 to 6.3 and stuck with an issue where we are making a call to a SOAP service endpoint via proxy created using Apache CXF ver 2.7.3 and I am seeing the SOAP request is not getting created properly. So I implemented a custom interceptor using which I was able to correct the SOAP request but after the correction, I am still seeing the bad response.

The SOAP response is getting stuck at UNMARSHALL phase where I am getting the following exception.

org.apache.cxf.phase.PhaseInterceptorChain Interceptor for {http://Paymetric/XiPaySoap30}XiPayWS#{http://Paymetric/XiPaySoap30}SoapOp has thrown exception, unwinding now

org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:"http://Paymetric/XiPaySoap30/message/", local:"soapOpResult"). Expected elements are <{}soapOpResult>

Could anyone please help?

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi,

Yes we have the community articles to address this use case - Apache CXF to invoke web service in AEM.

1. One community article is based on Geo IP information i.e., http://www.webservicex.net/geoipservice.asmx?wsdl  - Adobe Experience Manager Help | Creating AEM Services using Apache CXF that consume web services  - It also applicable to AEM 6.x

2. Other one as Scott mentioned is based on to get information of cities i.e., http://www.webservicex.net/New/Home/ServiceDetail/56 - Creating an Experience Manager 6.3 HTL Component that displays data from a SOAP Web Service  - This used HTL!!

Hope this helps!1

Thanks,

Ratna Kumar.

View solution in original post

2 Replies

Avatar

Level 10

You can use Apache CFX to invoke a 3rd party Soap Service. We have an article that shows you how using CFX -- Creating an Experience Manager 6.3 HTL Component that displays data from a SOAP Web Service

This Experience Manager example invokes a third-party web service located at:

http://www.webservicex.net/New/Home/ServiceDetail/56 (GetCitiesByCountry)

In our example -- we are using Java Proxy classes that invoke the SOAP service.

Avatar

Correct answer by
Level 10

Hi,

Yes we have the community articles to address this use case - Apache CXF to invoke web service in AEM.

1. One community article is based on Geo IP information i.e., http://www.webservicex.net/geoipservice.asmx?wsdl  - Adobe Experience Manager Help | Creating AEM Services using Apache CXF that consume web services  - It also applicable to AEM 6.x

2. Other one as Scott mentioned is based on to get information of cities i.e., http://www.webservicex.net/New/Home/ServiceDetail/56 - Creating an Experience Manager 6.3 HTL Component that displays data from a SOAP Web Service  - This used HTL!!

Hope this helps!1

Thanks,

Ratna Kumar.