cancel
Showing results for 
Search instead for 
Did you mean: 

Custom web service based on Alfresco APIs: how to publish

sergio
Champ in-the-making
Champ in-the-making
Hi all.

I developed a custom java package for managing Alfresco objects, now I need to develop custom web services that use the previous package classes.

I have the following alternatives:
1) develop the web service and deploy it as a new java project under tomcat web app. As a result, I will have two applications running under the same Tomcat installation: Alfresco and the application ad hoc created for exposing custom web-services;
2) develop the web service and deploy it directly under Alfresco as a new Alfresco web service. In this way my custom project will be encapsulated into Alfresco installation.

I prefer the second solution but I would like hear something about this from the Alfresco engineers and others who have similar experiences. In particular I need a clarification about the steps for deploying a new ws under alfresco.

Any help will be very appreciated.

All the best,

Sergio
5 REPLIES 5

rdanner
Champ in-the-making
Champ in-the-making
Hi all.

I developed a custom java package for managing Alfresco objects, now I need to develop custom web services that use the previous package classes.

I have the following alternatives:
1) develop the web service and deploy it as a new java project under tomcat web app. As a result, I will have two applications running under the same Tomcat installation: Alfresco and the application ad hoc created for exposing custom web-services;
2) develop the web service and deploy it directly under Alfresco as a new Alfresco web service. In this way my custom project will be encapsulated into Alfresco installation.

I prefer the second solution but I would like hear something about this from the Alfresco engineers and others who have similar experiences. In particular I need a clarification about the steps for deploying a new ws under alfresco.

Any help will be very appreciated.

All the best,

Sergio

Sergio,

I think both options are valid.  It depends on what you objectives and values are.  If you are looking simplicty of deployment and packaging putting them in the same context makes a lot of sense.  If you are looking for plugability (the ability to deploy with and without the capability then it may make sense to consider the first option.)

Another thing to consider is whether or not your changes and deployment model effect your support contract.

We have several differnt applications we want to leverage the same repository.  They are really seperate applications not additional capability to the webclient or the repository and for that reason we run them along side the repository in their own context.

sergio
Champ in-the-making
Champ in-the-making
Hi "russ",

you wrote:
I think both options are valid. It depends on what you objectives and values are. If you are looking simplicty of deployment and packaging putting them in the same context makes a lot of sense. If you are looking for plugability (the ability to deploy with and without the capability then it may make sense to consider the first option.)

I totally agree with you. The project I am involved into consists of a deep customization of Alfresco to have a repository specialized for clinical and genomics data. So in my opinion, for the nature of the specialization, I think it would be more natural to encapsulate the project itself into Alfresco, creating a specialized repository with specialized functions. From this point of view it could be more natural and obviously simple to use the Alfresco context. Telling the truth, I have not decided yet what kind of solution I will adopt…. The pluggability is, with no doubts, the best solution for ensuring modulality and scalabilty for applications….

Another point of interest for me is to evaluate the efforts needed to build and deploy new web services under the Alfresco context. I have no experience in doing it, do you have any suggestion for me?

Any help will be appreciated.

Many thanks and all the best.

Sergio

rwetherall
Confirmed Champ
Confirmed Champ
Hi,

Part of the 2.0 release will contain the first iteration at an Alfresco module packaging and deplyment framework.

The basics will be in 2.0 with a more complete solution available in the 2.1 timeframe.

Have a look here for some details (documentation is still WIP) http://wiki.alfresco.com/wiki/Developer_Guide#Alfresco_Module_Packages.

Cheers,
Roy

rdanner
Champ in-the-making
Champ in-the-making
Hi,

Part of the 2.0 release will contain the first iteration at an Alfresco module packaging and deplyment framework.

The basics will be in 2.0 with a more complete solution available in the 2.1 timeframe.

Have a look here for some details (documentation is still WIP) http://wiki.alfresco.com/wiki/Developer_Guide#Alfresco_Module_Packages.

Cheers,
Roy

Roy the link here (Developing an Alfresco Module - Guidelines on how to develop your own Alfresco modules.  (Owner: RW) ) doesnt allow us to look or is not available.

Maybe that is what you meant by Work In Progress?

-R

rwetherall
Confirmed Champ
Confirmed Champ
Hi Russ,

Yes, the final section around how to develop a module is still to be completed.  I'll try and post here when it's done.

In 2.0 features like disable and uninstall wont be available, but there will be enough for people to start developing and deploying AMP's.

The expectation is this functionality will be completed in the 2.1 release.

Cheers,
Roy