Initiating BPM Process Instances from External Web Service Call

I'm attempting to update the HelloWorld example so that I can create an instance of the process from an External Web Services Call rather than via the Workspace. Our current SOA Architecture is configured so that all BPM instances are managed through a .NET SmartClient via the Service Bus and the use of PAPI W/S and so I'm wishing to recreate this capability in the new BPM.
I understand the replacement for PAPI W/S is Human Workflow so I've therefore updated and republished the HelloWorld Example with an Exposed 'TaskService' Service for the Human Task within the BPM Process.
I've then attempted to reference the TaskService through our existing BPM, and have been able to import a number of generic WSDL's as follows:
Task Service
http://vmaquatestapp2:7001/integration/services/TaskService/TaskServicePort?WSDL
Task Metadata Service
http://vmaquatestapp2:7001/integration/services/TaskMetadataService/TaskMetadataServicePort?WSDL
Task Query Service
http://vmaquatestapp2:7001/integration/services/TaskQueryService/TaskQueryService?WSDL
When I examine the available operations for these generic services, there are quite a lot, each of which have a fairly complex schema. I believe I should be using the TaskService: InitiateTask Operation to create an instance of my BPM Process but my questions are:
- Is the above the correct method of interacting with BPM Instances from an external system such as the Service Bus?
- Does anyone have any examples of a basic XML payload that would initiate a process instance?

I created an process with a message start event and can call it from an external web service call. I can also pass input arguments and map those to process data objects. However I can not find how to return data as response to the external web service call as e.g. the process instance id.
Is it possible to this?
Gr,
Gert Jan Kersten

Similar Messages

  • How to create a process instance from PAPI Web Services

    Hi,
    I use Jdev 11g to create ADF(PAPI web service) to create new instances of BPM processes running in BPM Standalone (10g). However, I do not know how to write the code.
    Could any people paste the sample code for me?
    Thank you very much!
    papiWebServicePort.processCreateInstance(String, String, Holder<ArgumentBean>, Holder<instanceInfoBean>)

    import java.net.MalformedURLException;
    import java.rmi.RemoteException;
    import javax.xml.rpc.ServiceException;
    import com.bea.albpm.PapiWebService.OperationException;
    public class CreateInstances {
         public static void main(String[] args) throws MalformedURLException, ServiceException, OperationException, RemoteException {
              java.net.URL url = null;
              org.apache.axis.EngineConfiguration config = null;
              com.bea.albpm.PapiWebService.PapiWebServicePortBindingStub binding = null;
              com.bea.albpm.PapiWebService.InstanceInfoBean value = null;
              //String processId = "/Proceso1";
              //String processId = "/ActividadesExternas";
              String processId = "/PAPIWS";
              String argumentsSetName = "BeginIn";
              //Binding
              //url = new java.net.URL("http", "localhost", 8686, "/papiws/PapiWebServiceEndpoint");
              url = new java.net.URL("http", "localhost", 8585, "/papiws/PapiWebServiceEndpoint");
              config = new org.apache.axis.configuration.FileProvider("client_deploy.wsdd");
    binding = (com.bea.albpm.PapiWebService.PapiWebServicePortBindingStub) new com.bea.albpm.PapiWebService.PapiWebService_ServiceLocator(config).getPapiWebServicePort(url);
    binding.setTimeout(60000);
    //Arguments
    com.bea.albpm.PapiWebService.ArgumentsBeanArgumentsEntry argumentsBeanArgumentsEntry[] = new com.bea.albpm.PapiWebService.ArgumentsBeanArgumentsEntry[1];
    argumentsBeanArgumentsEntry[0] = new com.bea.albpm.PapiWebService.ArgumentsBeanArgumentsEntry();
    argumentsBeanArgumentsEntry[0].setKey("entradaArg");
    argumentsBeanArgumentsEntry[0].setValue("Instancia creada de forma externa mediante PAPI-WS 2.0");
    com.bea.albpm.PapiWebService.ArgumentsBean argumentsBean = new com.bea.albpm.PapiWebService.ArgumentsBean(argumentsBeanArgumentsEntry);
    com.bea.albpm.PapiWebService.holders.ArgumentsBeanHolder argumentsBeanHolder = new com.bea.albpm.PapiWebService.holders.ArgumentsBeanHolder(argumentsBean);
    //Create instance
    value = binding.processCreateInstance(processId, argumentsSetName, argumentsBeanHolder);
    System.out.println("Created instance -> InstanceInfo.id = " + value.getId());
         }

  • Bad XML from external web service and would like to change the content

    I am getting a bad XML(not valid) from external web service and I would like to change the content of the body in OSB proxy service to make it valid.
    For example
    <g:Information xsi:schemaLocation="http:// bad schema" xmlns:g="http://abc.com/t.xsd">
    <test>Test Data</test>
    </g:Information>
    should become
    <g:Information xmlns:g="http://abc.com/t.xsd">
    <test>Test Data</test>
    </g:Information>
    Do you how can I do this?

    I don't think it would be the best solution but you may try -
    1. Conver the incoming XML to string using fn-bea:serialize() function
    2. Replace the not-required content with a blank
    3. Covert the string back to XML using fn-bea:inlinedXML
    If you find any other solution, please let us know.
    Regards,
    Anuj

  • How can we make a external web service call within tjspSelfRegistrationTile

    Hello Gurus,
    Can anybody tell me how can we include a JAVA code within the tjspSelfRegistrationTiles.jsp page? so that we can make a external web service call which includes the logic of validating the UDF values?
    The requirement is to validate the value of a field provided by the user on the OIM self registration page. If the user has provided invalid value for that particular field then the user should not be able to register himself - an error message should be displayed. I have to compare the value provided by the user with some already hard coded ones within the JAVA code. If the value of the field is one of the hard-coded ones then only the user should be able to register himself.
    Any Response/ideas/concepts truly appreciated.
    TIA,
    - oidm.

    Have you ever tried something like this?
    1) Create an error message definition where error code starts with Adapter. for example, ADAPTER.Invalid_TemporaryAccess_Dates.
    2) Create an entity adapter and assigns it to the Request object, pre-insert;
    3) Logic of your adapter
    Tests if the REQ_OBJ_ACTION is Create Entity
    Performs your validations
    Handles an error the validation is not ok
    Thanks,
    Renato.

  • External Web Service call from Sandbox Solution in SharePoint 2010

    Can anyone from this forum can tell me how to call an external web service from Sandbox solution?
    It would of great help as got stuck on it for a long time.
    Note:- Cannot use Silverlight and JQuery to call web service from client side.Cannot use full trust proxy.

    Hi Dibyendu,
    Sorry for delay but fact that we can not call webservice in sand box solution(It's does not support).
    The reason behind of this sand box solution support only full trust code.
    One or more assemblies referenced by the XmlSerializer cannot be called 
      from partially trusted code.
    When you create a reference to a Web service, Microsoft Visual Studio®.NET creates and places one or more objects in your assembly to store the argument data passed to the method(s) in the Web service. These objects are serialized using the XmlSerializer class
    when you invoke one or more of the methods in the Web service. By default, if your assembly is strongly named and resides in the BIN directory, callers with partial trust cannot access objects within that assembly. When you make the call to the Web service
    method, the XmlSerializerdetects that there are partially trusted callers on the callstack (i.e. your assembly) and prevents the serialization from taking place even though the object resides in the same assembly.
    Er.vinay

  • External Web services call from within Oracle Pl/SQL

    Hi there,
    can anyone guide me whether there is any option to create web services call from Oracle Stored procedure ? ( External web services are available using SOAP)
    Thanks in advance.
    Regards,
    Jatin

    http://bit.ly/Uiaies

  • External web service call from WebDynpro for ABAP

    Hi...
    I'm inspecting Web Dynpro For ABAP, and trying to call external web services.
    I'm created Web Service, CAF-AS.
    I create the proxy class(se80) and Logical Port(lpconfig), and I take the web service in componentcontoroller of my web dynpro using Web Dynpro Wiserd.
    Though I expected the context to be registered by the same type as the service interface,
    they are created strange structure as follow.
    <Context>
    CONTEXT
    ---FIND_BY_PARAMS
    IMPORTING
    INPUT
    CONTROLLER
    ORDER_TEXT_BY_PARAMS_REQ
    ---EXPORTING
    OUTPUT
    CONTROLLER
    ORDER_TEXT_BY_PARAMS_RES
    The CONTOROLLER is defined by the type PRXCTRLTAB, and
    ORDER_TEXT_BY_PARAMS_* has deep structure, as follow.
    ORDER_TEXT_BY_PARAMS_REQ
    ---CONTROLLER    type:PRXCTRLTAB(structure)
    ---QUERY_TABLE  type:ZTABLE_NAME
    ---QUERY_FIELD   type:ZFIELD_NAME
    ---QUERY_OPTIONS  type:ZORDER_TEXT_QUERY_OPTION_TAB
    I want to use only service paralmeters,  that is named query_*.
    I tried to excute the webService but dump  "OBJECTS_OBJREF_NOT_ASSIGNED" occurs.
    I think I must set any value to CONTOROLLER,?but I have no idea What & How I should set value.
    please let me know, what is the CONTOROLLER, and how to call external web services.
    Regards,
    Naoya Tsugo,

    I solved problem by myself.
    There was carelessmiss in activation of LP.
    Now, I'm closing the topic.
    Thanks and Regards.
    Naoya Tsugo,

  • How to change the attribute of process instance by PAPI web service

    Is it possible to change the value of the attribute of one process instance by PAPI web servcie?
    thanks!

    That information is stored in the table PPROCINSTANCE in the engine database in the column instancedata, it is a blob.
    HTH

  • External Web Service call using WebMethods in Abap

    Hi everyone,
    I have presented with writing an interface, requested by a third party, in SAP ABAP that will call external web services from a java system. What I have been told is that I will be calling these services through webMethods. What I take is that webMethods is an SAP proxy wrapper around the web service. Beyond that I do not know what any of this is. I have asked my long-time ABAP developers and they have not seen any of the web calls through webMethods. Can someone present me with a basic understanding, maybe some code examples too? Also is this a standard function module call or a method in a class modules? How will it look to ABAP?
    Thanks for any info you can provide,
    Steve

    Hello,
    to be a bit more precise, WebMethods (or Business Connector) will register in sm59, and then you can make a function call in ABAP to this remote destination.
    You will have to check what parameters the WebMethods Service needs and pass them from ABAP.
    WebMethods then will take care of the WebService call to the external system and send the result back.
    CSY

  • Getting Soap Attachments from a Web Services Call

    Hi,
    We are using Studio Creator 2 and we need to connect to a web service that returns an attachment.
    We added the web service in the Servers/Web Services tab, and Creator created the Web Service Client jars automatically.
    The problem is that these classes that were produced does not seem to allow access to the attachment in the response (of the SOAP message).
    It appears that the classes that are generated hides the ability to get at the Soap body or message. Is there any way to get the attachment using the generated client classes, or do we have to create our own set of client classes to call the web service, and extract the attachment?
    Is there any sample code for Creator that calls a web service and then saves an attachment that is returned in the Soap message response?
    Thank you
    Matt

    Here is some general information with examples which you might find useful
    to solve your problem.
    Patterns and Strategies for Building Document-Based Web Services
    http://java.sun.com/developer/technicalArticles/xml/jaxrpcpatterns/index5.html

  • Allow only one IP ADDRESS from a web service call

    Hi gurus,
    i'm working in an ECC 6.0 with stack18 (SOAMANAGER tcode).
    I have defined a new web service definition (with SE80 tcode) and i see it in SOAMANAGER tcode.
    I have to limit to one ip address when 3rd party client invoke it; it's possible to do this with an authorization object or by some SOAMANAGER value filled in order to have only one ip address invoked.
    Thank's in advance.
    Maurizio Ortolani

    Hi,
    Did you resolve your problem Because We want to implement the same functionality in our SAP Landscape.
    Thanks in advance.
    Thanasis

  • Can a BPEL process wait for a second web service call

    Hi,
    My BPEL process is an asynchronous process, so the first web service call kicks off an instance of the process.
    what i want is somewhere down in the process i can put a "receive" shape to pause the process and wait for another web service call to come in, once the "receive" shape gets the second web service call, the process continues on.
    Is that a valid thing to do on BPEL?
    i don't seem to be able to get it working.
    i could change the WSDL for the BPEL process to publish two operations, the default "initiate" and another one called "continue", they both accept the same type of request message.
    but when i test it, the BPEL process just can't accept message at the second operation, it always creates a new instance to handle the web service calls, even when the call is targeting "continue" operation.
    Any ideas?
    Thanks in advance!

    I was just about to give up after the last post but then the "pick" shape hit my eye somehow ("thank God", that's all i can say)
    and it did the trick, the "pick" shape can wait for an incoming call from a partner link.
    so what i can achieve is this,
    the first web service call sends some thing like
    <Root><CorrelationId>1</CorrelationId><Content>first name</Content></Root>
    on the "initiate" operation, just like calling an "initiate" method in java code
    the BPEL instance gets initiated, reaches the "pick" shape and stops
    then a second web service call comes in as
    <Root><CorrelationId>1</CorrelationId><Content>last name</Content></Root>
    on the "continue" operation, again just like calling a "continue" method
    it works!

  • Integration between Purchase Requisition  & external web services

    Hi
    We have a requirement to Integrate  Purchase Requisition Process in MM & external web services(Portal).So we wanted to know what are the third party tools that SAP supports inorder to integrate both the systems.The requirement is like a business user from  Logistics team enters a PR on  a portal and the data flows to SAP through a connector and creates  a PO automtically if it has got sufficient data.
    Regards
    Prasad

    Hi,
    If you have the any transaction codes that are required to do the process in the backend MM, use the same tcodes and create the SAP Transaction iViews in the Portal.
    You can have three GUI (for look and feel) in the Portal iViews, SAP GUI for Windows that is the default one, SAP GUI for HTML has the Web look and feel, which requires you to configure the ITS and SAP GUI for Java. Depending on your requirement you can use any of the three.
    Hope this will help you.
    Sheetal
    Reward if helpful.

  • External Web Service - User and password in HTTP header

    Hi!
    How is it possible to add user and password in the HTTP header in a external web service call? 
    I have created a "Portal Service from WSDL file - Client side" with the wizard in SAP Developer Studio.  I following the Java Development Guide - Web Service Security, and use the <i>secured service connection</i>.  I have also created a new <i>System Landscape</i>, but should the new system be based on HTTP, my own PAR or what?
    How can I check that the user and password is added to the HTTP header or the SOAP envelope? Do I have to scan http traffic with a proxy as Paros or can I find the request sent from SAP EP in the logs?
    Cheers
    Asle

    Hello All,
    I have been struggling a bit while putting a reasonable security framework on a jax-rpc style web service. I'm using JWSDP1.2 to set up the webservice. I've tried to outline my problem below. Please correct me where I'm wrong.
    I've been through the Sun's WS tutorials, but they are not really clear on security. However, from them I surmised that there are two decent authentication techniques. HTTP Basic and mutual authentication (MA) . Both have their drawbacks though. HTTP Basic suffers from poor encryption while MA is a bit difficult to set up on both client and server sides. Another problem with MA is that there is no central repository for users/passwords.
    OK, what I would really like to do is use my own user database to verify users/passwords i.e. use a HTTP Basic like authentication (but at application level) but run it over SSL for encryption. It seems simple, but is it possible?
    Also, I have noted that when I use HTTP Basic on the service side, and use a java client, then setting username/password has no effect. In other words, I can always access the web-service, even with wrong username/password.
    Sorry for the long post. Hope someone can help. Thanks.

  • System processes needed for web service call

    Hi experts,
    one theoretical question: how about the system processes needed for a web service call? If have created a test service that does nothing except to wait for 10 seconds. When I call it from outside, no extra process is busy (as seen in trx SM50). Is it possible that one web service call (from outside -> SAP machine) does not need a DIA or BTC process on SAP machine?
    Thanks in advance for your help!
    Kind regards, Matthias

    Hi,
    Of course a web service needs a dialog workprocess to run.
    But if you used the "wait" abap instruction, it may be that this instruction frees the work process ?
    Regards,
    Olivier

Maybe you are looking for

  • How can I stop my phone buzzing with alarms

    using a 58000 Xpress Music I synch with Outlook - great! I have a todo item and the phone now reminds me too - great! Unfortunately the alarm assumes I am there, all the time with my phone, and it's default time is 6 a.m so if the phone s in my bedro

  • Problem in select  statment & loop of itab.

    Hi all,       I am having on ITAB1  for, ex which is having five line items or more  . iam also using select statment SINGLE statment for 7 times ,to select values for different data base  table. for ex, loop at itab.    1---> SELECT SINGLE Z_CTRY_OR

  • How to organize work in OWB Design Centre to enable dimension sharing?

    Hi all, I'm looking for some guidance regarding the best way to go about organizing my work in OWB Design Centre to enable sharing of work already done and to avoid duplication. Currently I have one area: 1 Project 4 Source modules 1 Target module wi

  • SWAP space on AIX

    Hi all, I have prod and test on the same server on AIX 5.3 box. And application is 11i. It's not a good config but thats the way it is here. And for the last 6 months or so we are getting PGSP_KILL error in AIX log files. My server RAM is 8GB and as

  • Setting adobe indexes remotely as an admin

    I have 10 index paths that I need to set up on potentially over 1,000 workstations, with varying versions of Adobe Acrobat Pro and Adobe Acrobat Reader.  I need to automate this task, and do it remotely as a network admin.  I know that the indexes ca