Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

How do you create a SOAP service in CQ5 (AEM)

Avatar

Level 3

Does anyone know how to publish a SOAP service in CQ5? Found the following link but this looks more like a hack. Is there any other way to do it?

1 Accepted Solution

Avatar

Correct answer by
Level 10

AEM does not have the libs (including CXF) to expose a web service. You have really 2 choices. Assume you want to expose JCR data as a web service. You can follow that link. It talks about what you need to do. 

Or 2 - you can setup a web service on a web server (ie Tomcat) and code a Java bean and use Apache CXF and the JCR API. THe bean will expose a WSDL and use the JCR API to perform CRUD (Create, Replace, Update, and Delete) operations on the JCR Data. 

[img]CQWSDL.png[/img]

View solution in original post

6 Replies

Avatar

Correct answer by
Level 10

AEM does not have the libs (including CXF) to expose a web service. You have really 2 choices. Assume you want to expose JCR data as a web service. You can follow that link. It talks about what you need to do. 

Or 2 - you can setup a web service on a web server (ie Tomcat) and code a Java bean and use Apache CXF and the JCR API. THe bean will expose a WSDL and use the JCR API to perform CRUD (Create, Replace, Update, and Delete) operations on the JCR Data. 

[img]CQWSDL.png[/img]

Avatar

Level 3

Thanks mate. I rather go with the 2nd option as the 1st seems to be too much of a hack.

Avatar

Level 2

How to access JCR API from bean on tomcat? Please reply.

Avatar

Level 2

I would also go with the option of setting up a separate Tomcat.

Getting Apache CXF to work as SOAP service within the OSGi runtime of AEM will be very complex, if not impossible due to dependency conflicts.

Take a look at Apache Mule, the concept is interesting!