AnsweredAssumed Answered

Webservices Gurus. Extending the Alfresco using webservice

Question asked by rv.a.sharma on Mar 12, 2009
Latest reply on Mar 13, 2009 by rv.a.sharma
Hello Gurus,

We are trying to achieve a communication between Alfresco and SAP Enterprise system.

1. SAP Enterprise system expects Alfresco to implement a Soap based Webservice which conform to a given Standard WSDL interface.
2. We generated the webservices classes using the Axis2 and also able to parse the resquest and response ( dummy ) in our AXIS2 webservice.

Problems :

1. We need to to deploy this webservice using Eclipse.
    If we deploy our webservice using eclipse ( by configuring the Tomcat of alfresco as server )
   We get the WSDL to work . But when we start the Alfresco Server (from start menu ) the same wsdl url doesn't work.
   We use a work around by copying the war file of our webservice manually in the Alfresco/Tomcat/Webapps directory.
   Is it the right approach ?? Is there anyother way to deploy the custom Webservice in Alfresco ?

2. We want to talk to alfresco and read the content etc. from the deployed webservice. 
    How to go about it ?? We need to read the properties of the content stored in Alfresco ?
My understanding is :
1. I will connect to the alfresco repository the way we do in the webservices examples from a deployed
     webservice application means MY WEBSERVICE TO SAP will WORK AS A Mediator BETWEEN ALFRESCO
    and SAP and will be a client to Alfresco API .
     eg. in my webservice i will write something like this :

      Do you think we can do this from a deployed webservice .. not a standalone class ?
      Can you guide me in configurations required from Alfresco end to make such a thing work ??

     RepositoryServiceSoapBindingStub repositoryService = WebServiceFactory.getRepositoryService();        
        // Create a query object, looking for all items with alfresco in the name of text
        Query query = new Query(Constants.QUERY_LANG_LUCENE, "TEXT:'alfresco development team'");
        // Execute the query
        QueryResult queryResult = repositoryService.query(STORE, query, false);