Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

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

viren_pushpanay
Level 3
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
smacdonald2008
Correct answer by
Level 10
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
smacdonald2008
Correct answer by
Level 10
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

viren_pushpanay
Level 3
Level 3

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

manishc97360515
Level 2
Level 2

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

CQJonathanNiels
Level 2
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!