Starting external processes

Hi everyone
I have a small problem that I need help to solve. I am developing a Web Service structure, that is simplified a large number of distributed nodes. Of course all nodes needs to be tested and so therefor I start each node, in a separate window. But I would like to start all the nodes from a single window so they start up at the same time.
My first thought was to use java.Runtime class exec method. For each node start a thread that start up the node with some command like "java Node1". But I can�t seam to get it right.
Anyone that knows how I can make this in an easy way? I am using win2k
Thanks

See http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html for general traps and problems with runtime.exec
by the way, you can run a java program from java by just calling the main method of the class.

Similar Messages

  • How to handle starting of external processes with Runtime.exec() properly

    hi people,
    you find a lot about starting external processes with the Runtime class in every forum.
    -> that the stdout of the started processes has to be redirected and read
    due to os buffer problems
    -> that calling batches is done by starting the interpreter and the batch as parameter (cmd.exe, /bin/sh,..)
    -> that the created process doesn't have an os environment
    -> ...
    but what if you don't know anything about the started process.
    what if you only want only to start an external process. if you don't want to wait til waitfor() returns and if you don't read the streams of the created processes, the os stdout buffer will overflow immediately an the started process will be blocked.
    you can read the stdout of the started process, but what if the process does print nothing to stdout, and your bufferreader.readLine() will block ?
    you can do this (read buffer, waitFor()) in an separate thread, but the thread lives til the started process will finish, so maybe you got dozens of senseless thread ?
    So, what is an effective and good way to start external programs/processes if you don't know about them.
    so i would be grateful for an answer
    regards
    Alen

    I realize that's a pat answer, but it's true. Spawing off another program without being able to predict its behavior is dangerous.
    But anyway, as I understand it creating a new process is relatively expensive. The cost of creating new threads to read the process's I/O and later garbage collecting those threads when the process dies, probably isn't much of an additional burden.

  • Starting of external processes with Runtime.exec() properly

    hi people,
    you find a lot about starting external processes with the Runtime class in every forum.
    -> that the stdout of the started processes has to be redirected and read
    due to os buffer problems
    -> that calling batches is done by starting the interpreter and the batch as parameter (cmd.exe, /bin/sh,..)
    -> that the created process doesn't have an os environment
    -> ...
    but what if you don't know anything about the started process.
    what if you only want only to start an external process. if you don't want to wait til waitfor() returns and if you don't read the streams of the created processes, the os stdout buffer will overflow immediately an the started process will be blocked.
    you can read the stdout of the started process, but what if the process does print nothing to stdout, and your bufferreader.readLine() will block ?
    you can do this (read buffer, waitFor()) in an separate thread, but the thread lives til the started process will finish, so maybe you got dozens of senseless thread ?
    So, what is an effective and good way to start external programs/processes if you don't know about them.
    so i would be grateful for an answer
    regards
    Alen

    http://forum.java.sun.com/thread.jspa?threadID=659862&tstart=0
    The first four might pass as accidents, but this one is simply idiocy, spamming and general bad manners.

  • How to start external application

    how do i start external process like notepad.exe or is there
    any mechanism to reload air application
    Does air supports this?
    thanks

    Hi,
    AIR 1.1 does not support launching external processes or
    reloading itself (though an HTML AIR app can).

  • To start the process by external program.

    I'm using Guided Procedure
    I want to start GP Process from external program.
    I've tried Java API and it worked well.
    But, I'm looking for the other way that starts Process of GP (ex, Web Service, URL,,,?)
    Please let me know how to start processes.
    Best regards,
    Koji

    Hi,
    Yes. You can start a process through a web services that can be triggered from a method in a class or FM etc.
    You can refer this link that has a step by step process for the same.
    http://help.sap.com/erp2005_ehp_03/helpdata/EN/44/44c59fd7c72e84e10000000a155369/frameset.htm
    Hope this helps.
    Cheers,
    Mandrake

  • Starting BPM process externally.

    Hi,
    I have created a BPM process and I am able to test it from NWA -> Process repository. But When I am testing from WS Navigator then I am getting an error like-> Web Service returned an error. Fault Code: "(http://schemas.xmlsoap.org/soap/envelope/)Server" Fault String: "Process start has been triggered."
    But my process is started fine. Actualy I want to access this WSDL URL from other applications. Can anybody help me?
    Thanks,
    Somnath

    Hi There
    > Actualy I want to access this WSDL URL from other applications. Can anybody help me?
    Any tool or application that can send a SOAP-Message to the WSDL-Interface in the starting-event can trigger those processes.
    I used SOAPUI to start the processes i wanted to test. You just need to know the location of the WSDL of your process. You may find this in the NWA - Single Services Administration when you select your process.
    hope this helps,
    Markus
    edit:
    > Simply change the WSDL interface for your process to an asynchronous one - a WSDL that only contains a Request and no Response.
    Wouldn't this be a "one-way"-process instead of an asynchronous (only request, no response)? Because an asynchronous process should response when it's finished.
    Edited by: Markus Alfers on Mar 5, 2009 11:41 AM

  • How to pass BindVariables to External Process (Workflow)

    I build a shell script (unix) which accepts a command line parameter .... a "filename"
    The "filename" is a dynamic name!
    The workflow is build with a custom input parameter "filename" ... which I want to pass to an external process, which calls this shell script:
    How can I do that ?
    ExtProcess:
    Command : Val=/bin/ksh
    Parameter_List : Val=":/home/bin/myscript.sh:${Task.Input}:"
    (Binding ":Filename" replaces the whole value, sorry)
    Succes_Threshold: Val=0
    Script : Val="" , Binding=":Filename"
    ... does not pass the value of ":Filename"
    Script : Val="/tmp/fixed.name"
    ... works only with fixed names
    what I really need is something simple like:
    Parameter_list : Val=":/home/bin/myscript.sh:${Parameter.Filename}:FIXPARAM:"
    or Script : Val=":${Parameter.Filename}:${Parameter.Param2}:${Parameter.Pram3}"
    ... similar problem I had with FTP, I found no way to pass dynamic filenames or other parameters (except LOCATION Parameters)
    ... similar problem I had with EMAIL I found no way to include PARAMETERS to the mail body (except to replace the whole body by 1 parameter)
    Is there a solution or is in current version OWB 9.2 only "static" parameters supported.
    I also was missing to pass OUTPUT-parameters for example of a TRANSFORMation,
    I also was missing some urgent SYSTEM-parameters for self identification of the process(like "SYSTEM.TASK_NAME" "SYSTEM.EXECUTION_AUDIT_ID" "SYSTEM.ITEM_KEY" )
    Thanks for all hints and best regards
    Martin

    Actually... After further investigation this may not be needed. I'd be interested in the answer, to understand what is possible.
    The concept of passing parameters in the OWB workflow designer is rather limited, in my humble opinion. Sure, you can designate a "start" sequence that takes a parameter and you can pass that to mappings/transformations but there is no chance for feedback. Ie, if I manually (or through some rigged script) execute the flow with the "PARAMETER" then it will be able to bind. What about mid-flow. IE, select the record to be "processed", then call a "flow" with that as a parameter.
    Am I mistaken? Is there a way to expose the "out" parameters of a mapping, or the return of a "transformation function" as "OUTS" in the process flow.
    Of course, in a world where everything is OWB and in the DB one can leave data in tables, and pick it up on the other mappings. HOWEVER, most BI systems involve external retrievals, etc. that need a bit more "intelligence" then "run and return 1,2,3" . :)
    Hope this is helpful for product feedback. If I'm mistaken on the WF capabilities please clue me in. :)
    btw, I'm an OWB fan, certainly. The progress over the past two years has been excellent.

  • Error in using External Process in the Process Flow

    I Created a Process Flow with an external process to Move the file from one location to another location,
    I gave the below parameters for the External Process
    COMMAND: move
    PARAMETER_LIST: ?F:\\FlatFiles\\in\\company.txt?F:\\FlatFiles\\error\\company.err
    SUCCESS_THRESHOLD: 0
    SCRIPT:
    The environment is
    Windows 2003
    OWB 9.2.0.8
    OWF Builder 2.6
    When I deploy and execute using Deployment Manager, it gave me the below error
    Starting Execution TEST
    Starting Task TEST
    Starting Task TEST:EXTERNALPROCESS
    CreateProcess: move move F:\FlatFiles\in\company.txt F:\FlatFiles\error\company.err error=2
    Completing Task TEST:EXTERNALPROCESS
    Completing Task TEST
    Completing Execution TEST
    What am I missing something here?
    Is my Parameters correct?
    GIve me the link where I can find more on using External process.
    Please...please...help me..
    Shree

    Nikolai,
    I have created a simple process flow which only calls the external process. The script is on the same host as the process flow is deployed to.
    I have used two diffent values for the command parameter.
    1. I placed the full path of the file in the command parameter and left the script parameter blank:
    COMMAND: /edwftp/ppas/scripts/ClearPPAS.sh
    PARAMETER_LIST:
    SUCCESS_THRESHOLD: 0
    SCRIPT:
    2.I placed the bash command in the command parameter and the full path in the script parameter.
    COMMAND: /usr/bin/sh
    PARAMETER_LIST:
    SUCCESS_THRESHOLD: 0
    SCRIPT: /edwftp/ppas/scripts/ClearPPAS.sh
    Both of these appear to work as they print out the statements inside the script but the files that are supposed to be removed still remain.
    Starting Execution EXTER_FILE
    Starting Task EXTER_FILE
    Starting Task EXTER_FILE:EXTERNALPROCESS
    Removing ActivatedAudit.dat...
    Removing ActivatedCustomers.dat...
    Removing ActiveAudit.dat...
    Removing ActiveCustomers.dat...
    Done!
    Create the Activated Customers data file...
    Create the Active Customers data file...
    Done!
    WARNING: Log file truncated - see RAB for further information.
    /edwftp/ppas/scripts/ActivatedCustomers.sh: /edwftp/ppas/log/ActivatedCustomers.log: cannot create
    /edwftp/ppas/scripts/ActiveCustomers.sh: /edwftp/ppas/log/ActiveCustomers.log: cannot create
    WARNING: Log file truncated - see RAB for further information.
    Completing Task EXTER_FILE:EXTERNALPROCESS
    Completing Task EXTER_FILE
    Completing Execution EXTER_FILE
    The permissions on the /log direcotry are 775. The user I register the file location with owns this directory.
    Can't think of anything else I have missed. I really appreciate your help :)
    Ryan

  • Production operation external processing goods receipt for subcontract PO

    Hi PP/MM experts,
    I searched for existing forum entries but no luck or final answer.
    I have a question about the goods receipt for a subcontracting PO that is account assigned to an operation of a production order (external processing for operation).
    The following situation:
    Production order type PP02 - external processing
    There is only one operation in the production order with control key PP02 - external processing. I marked the control key PP02 in configuration for 'Automatic goods receipt'.
    I created a PO for the PR is the operation
    When I'm doing the goods receipt of the subcontrating PO a 101 posting is triggered for the finished product and components are consumed by 543 O movements. So far so good. But the inventory for the finished style is not increased. In MIGO I even see that even a batch number for the finished product is determined. Looks like that only the service is posted but not the inventory. I assumed when I mark the operation contol key for 'goods receipt' that the MIGO will also post the inventory for the finished style.
    Reason for PP order and not only subcontract order is that we want to manage capacities of external suppliers with PP capacity planning.
    Is that a bug in our system or normal behaviour? We use SAP ERP 6.5 with IS AFS.
    Thanks in advance for your answers.
    Best Regrads,
    Harry

    Hi Rizzi and all others,
    thanks for your replies.
    I'm using a production order for the following reasons:
    We want to use capacity planning for external suppliers. At least to have some overview of work they have to do in a month
    The external assembly can also be changed to internal assmebly and for that reason we will start always with the same kind of document -> production order.
    But one more thing what is really confusing. In the materials document list MB51 the 101 movement for the service is listed even if the inventory was not increased. That is really confusing for the users.
    Best Regards,
    Harry

  • How to start BPM process WSDL from WDA

    Hello,
    I need to start BPM Process from SRM ECC with WDA; i have been through this link ;
    http://forums.sdn.sap.com/thread.jspa?threadID=1643425
    also followed the pdf named 'Triggering NetWeaver BPM Process from ABAP' provided from SAP but still stuck on some issues;
    - I have a WSDL in order to start BPM process and works fine as i successfully call it from EP Java AS with WDJ..
    - What i need to do is to trigg it from SRM Screens so i need to call this WSD from ECC, so;
        When i try to create a consumer proxy using external wsdl option, after putting in WSDL Url it throws an error;
    Exception occurred in communication framework:Error in HTTP Framework:405 Method Not Allowed http://xxx.local:50000/bpm/de
    mosapcom/dccategoryappbpm/StartCatAppSI
    Exception of class CX_SLIB_HTTP_FAIL
    And this is error from BPM Logs for the same action;
    process()
    [EXCEPTION]
    com.sap.engine.interfaces.webservices.runtime.RuntimeProcessException: com.sap.engine.services.webservices.espbase.server.additions.wsa.WSAddressingException: com.sap.SOA.wsr.030104 - Expected request method POST. Found GET.
    at com.sap.engine.services.webservices.espbase.server.additions.SOAPHTTPTransportBinding.getAction(SOAPHTTPTransportBinding.java:581)
    at com.sap.engine.services.webservices.espbase.server.runtime.RuntimeProcessingEnvironment.overwriteConfiguration(RuntimeProcessingEnvironment.java:894)
    at com.sap.engine.services.webservices.espbase.server.runtime.RuntimeProcessingEnvironment.preProcess(RuntimeProcessingEnvironment.java:469)
    Also i found this link : http://wiki.sdn.sap.com/wiki/display/TechTSG/(WSR)Problems-P06/
    But no help so far,
    So, is there anyone faced similar or the same issue? Any suggestion will be appreciated.
    Regards,
    Yasin

    Hi soujanya,
    BPM server is not open to the internet but only intranet, so i will copy the WSDL code for you,
    will be glad if you can help;
    - <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.koczer.com/StartCatAppSI/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="StartCatAppSI" targetNamespace="http://www.koczer.com/StartCatAppSI/">
    - <wsdl:types>
    - <xsd:schema targetNamespace="http://www.koczer.com/StartCatAppSI/">
    - <xsd:complexType name="DetailsType">
    - <xsd:sequence>
      <xsd:element name="Category_ID" type="xsd:int" />
      <xsd:element name="Category_Text" type="xsd:string" />
      <xsd:element name="User" type="xsd:string" />
      <xsd:element name="Manager" type="xsd:string" />
      </xsd:sequence>
      </xsd:complexType>
    - <xsd:element name="NewOperation">
    - <xsd:complexType>
    - <xsd:sequence>
      <xsd:element name="Details" type="tns:DetailsType" />
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:schema>
      </wsdl:types>
    - <wsdl:message name="NewOperationRequest">
      <wsdl:part element="tns:NewOperation" name="parameters" />
      </wsdl:message>
    - <wsdl:portType name="StartCatAppSI">
    - <wsdl:operation name="NewOperation">
      <wsdl:input message="tns:NewOperationRequest" />
      </wsdl:operation>
      </wsdl:portType>
    - <wsdl:binding name="StartCatAppSISOAP" type="tns:StartCatAppSI">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    - <wsdl:operation name="NewOperation">
      <soap:operation soapAction="http://www.koczer.com/StartCatAppSI/NewOperation" />
    - <wsdl:input>
      <soap:body use="literal" />
      </wsdl:input>
      </wsdl:operation>
      </wsdl:binding>
    - <wsdl:service name="StartCatAppSI">
    - <wsdl:port binding="tns:StartCatAppSISOAP" name="StartCatAppSISOAP">
      <soap:address location="http://zerbpmts.koczer.local:50000/bpm/demosapcom/dccategoryappbpm/StartCatAppSI" />
      </wsdl:port>
      </wsdl:service>
      </wsdl:definitions>

  • Substitute variables for external process activity in process flows

    Has anyone used with success substitute variables such as ${Working.Rootpath} for external process activity?
    I can't get it working. Variables aren't substituted and my scripts fail.
    Sample value for parameter_list parameter for external process I use is:
    |${Working.Rootpath}|
    and in the script I get:
    ${Working.Rootpath}
    which is of course not what I expected.

    In documentation is Working.Rootpath so there is a bug in documentation. It is ugly because it's hard to guess.
    Thank's for your reply Michael. I checked all that you described. Previously I had Working location set to "Use default location". When I changed it to actual location substitute variables started to work properly.
    If I correctly understand "Use default location" means: use location associated with process module. And for execution it works but for substitute variables doesn't. So I think it is a bug.
    Next thing is variables in the script itself. From examples sent by Mark (script: cd ${Working.RootPath}...) they should be set in environment and accessible to shell. This doesn't work for me but it is not described in documentation and can be easily achieved by passing parameters. So that's not a problem.
    One more question: Should I open tars and file bugs describing what we found?

  • Can't start GP process by GP API

    When I start GP process using GP API, it report the following exception:
    ERROR_ALREADY_STOPPED
    com.sap.caf.eu.gp.base.exception.InvocationException: ERROR_ALREADY_STOPPED
         at com.sap.caf.eu.gp.base.caching.MemoryCache.checkActive(MemoryCache.java:230)
         at com.sap.caf.eu.gp.base.caching.MemoryCache.getEntry(MemoryCache.java:281)
         at com.sap.caf.eu.gp.model.context.impl.UserContextFactory.getUserContext(UserContextFactory.java:195)
         at com.sap.caf.eu.gp.model.context.impl.UserContextFactory.getUserContext(UserContextFactory.java:181)
         at com.sap.caf.eu.gp.context.impl.GPUserContext.<init>(GPUserContext.java:89)
         at com.sap.caf.eu.gp.context.impl.GPContextManager.createUserContext(GPContextManager.java:90)
         at com.sinopec.mdmgp.util.workflow.MDMGPWorkflowUtil.startGPProcess(MDMGPWorkflowUtil.java:170)
         at com.sinopec.mdmgp.util.workflow.MDMGPWorkflowUtil.startProcess(MDMGPWorkflowUtil.java:123)
         at com.sinopec.mdmgp.wd.ui.grid.GPUIGridView.handleSubmit(GPUIGridView.java:479)
         at com.sinopec.mdmgp.wd.ui.grid.wdp.InternalGPUIGridView.wdInvokeEventHandler(InternalGPUIGridView.java:239)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.progmodel.controller.Component.fireEvent(Component.java:284)
         at com.sinopec.mdmgp.wd.ui.grid.wdp.InternalDCUIGridCompInterface.wdFireEventEV_SUBMIT(InternalDCUIGridCompInterface.java:188)
         at com.sinopec.mdmgp.wd.ui.grid.DCUIGridCompInterface.submitGuidedPrice(DCUIGridCompInterface.java:175)
         at com.sinopec.mdmgp.wd.ui.grid.wdp.InternalDCUIGridCompInterface.submitGuidedPrice(InternalDCUIGridCompInterface.java:136)
         at com.sinopec.mdmgp.wd.ui.grid.wdp.InternalDCUIGridCompInterface$External.submitGuidedPrice(InternalDCUIGridCompInterface.java:258)
         at com.sinopec.mdmgp.wd.pricing.frame.DCGuidedPriceModifyView.onActionSubmitConfirm(DCGuidedPriceModifyView.java:288)
         at com.sinopec.mdmgp.wd.pricing.frame.wdp.InternalDCGuidedPriceModifyView.wdInvokeEventHandler(InternalDCGuidedPriceModifyView.java:240)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.clientserver.event.CustomEventProcessor.handleServerEvent(CustomEventProcessor.java:45)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleServiceEvent(WindowPhaseModel.java:361)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:128)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processPhaseLoop(WebDynproWindow.java:345)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:152)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:313)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingPortal(ClientSession.java:733)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:668)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.clientserver.session.core.ApplicationHandle.doProcessing(ApplicationHandle.java:73)
         at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.sendDataAndProcessActionInternal(AbstractApplicationProxy.java:860)
         at com.sap.tc.webdynpro.portal.pb.impl.localwd.LocalApplicationProxy.sendDataAndProcessAction(LocalApplicationProxy.java:77)
         at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1257)
         at com.sap.portal.pb.PageBuilder.SendDataAndProcessAction(PageBuilder.java:325)
         at com.sap.portal.pb.PageBuilder$1.doPhase(PageBuilder.java:826)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processPhaseListener(WindowPhaseModel.java:755)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doPortalDispatch(WindowPhaseModel.java:717)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:136)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:313)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Is there something wrong with the UserContext?

    Hi Osukhovsky,
    Thanks for your answer.
    I am sure the process template is activated, beacause I can start it in GP Runtime.
    After I restart the server process, the problem is resolved. But I want to know the reason why the code dosen't work suddenly?

  • Starting external progran SAPXPG failed (SM69)

    System Information:
    ECC 6, Oracle 10.2, AIX 5.3, Kernel Patch level 147
    Hi all,
    We were encountered problems when try to scheduled actions in DB13.
    We had install CI & DB on separate server and the rfc SAPXPG_DBDEST_<Destination> is not working.
    We tried to use RSH in SM49/SM69 to start external program SAPXPG in target host remotely, however, it return External program terminated with exit code 1 when we executed it.
    *External command we used
    Rsh
    Target host u2013l <sid>adm sapxpg
    Logs of dev_cp:
    Trace file of control program (trace level 3)
    < Function: BtcTrcInit> Function: main  SAPXPG 700
    2009-02-05--21-18-10 : Before BtcXpgDetach
      > Function: BtcXpgDetach  < Function: BtcXpgDetach  Accept RFC connection from R/3 system
    2009-02-05--21-18-10 : Before RfcAccept
    2009-02-05--21-18-10 : RfcAccept returned OK
    security check switched OFF
      Install RFC call SAPXPG_START_XPG
      Install RFC call SAPXPG_START_XPG_LONG
      Install RFC call SAPXPG_END_XPG
      Wait for RFC call SAPXPG_START_XPG or SAPXPG_START_XPG_LONG
    2009-02-05--21-18-10 : Before first call of RFCDispatch
      > Function: BtcXpgStartXpgLong
    2009-02-05--21-18-10 : Beginning of BtcXpgStartXpgLong
        > Function: BtcXpgStartXpgImportLong      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgTable      < Function: BtcXpgTable    < Function: BtcXpgStartXpgImportLong
    BtcXpgStartXpgLong: special_trace_flag = <3>
        > Function: BtcXpgStartXpgInt      > Function: BtcXpgItTransfer        Content of source log table:
              Line  Text
              <No StdOut/StdErr output reported>
            Target log table is not identical to source
            ItGetLine terminated with NULL
          < Function: BtcXpgItTransfer      > Function: BtcTrcReset      < Function: BtcTrcReset      Call mode: VIA RFC
          Input arguments of BtcXpgStartXpg:
            External program: rsh
          tracecntl = : 3
            Program argument string: bir-hrerpdb -l prdadm sappxpg
            Contents of control flags:
              StdIn control flag: redirect StdIn
              StdOut control flag: store StdOut output in memory
              StdErr control flag: store StdErr output in memory
              Trace control flag: unknown contents
              Termination control flag: control program will wait for termination
          > Function: BtcXpgCheck        > Function: BtcXpgArgv
              parameter number 1:
              Scanned parameter: bir-hrerpdb
              parameter number 2:
              Scanned parameter: -l
              parameter number 3:
              Scanned parameter: prdadm
              parameter number 4:
              Scanned parameter: sappxpg
              Total number of arguments scanned: 4
              Argument argv[0]: rsh
            < Function: BtcXpgArgv      < Function: BtcXpgCheck      > Function: BtcXpgSigInst        set signal handler for SIGCHLD to SIG_DFL
            old signal handler for SIGCHLD: SIG_DFL
          < Function: BtcXpgSigInst      > Function: BtcXpgStart        Process id: 172232
            Parent process id: 352710
            > Function: BtcTrcIni      Start status of external program: external program successfully started
          Id of external process: 0000323746
          StdOut/StdErr collected in memory
            Line  Text
            <No StdOut/StdErr output reported>
        < Function: BtcXpgStartXpgInt    > Function: BtcXpgStartXpgExport      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam    < Function: BtcXpgStartXpgExport
    2009-02-05--21-18-10 : End of BtcXpgStartXpgLong
      < Function: BtcXpgStartXpgLong
    2009-02-05--21-18-10 : After first call of RFCDispatch
      Wait for RFC call SAPXPG_END_XPG
    2009-02-05--21-18-10 : Before second call of RFCDispatch
      > Function: BtcXpgEndXpg
    2009-02-05--21-18-10 : Beginning of BtcXpgEndXpg
        > Function: BtcXpgStartXpgExport      > Function: BtcXpgTable      < Function: BtcXpgTable    < Function: BtcXpgEndXpgImport    > Function: BtcXpgEndXpgInt      > Function: BtcXpgItTransfer        Content of source log table:
              Line  Text
              <No StdOut/StdErr output reported>
            Target log table is not identical to source
            ItGetLine terminated with NULL
          < Function: BtcXpgItTransfer      > Function: BtcXpgReadChild        Process executing external program has terminated
          < Function: BtcXpgReadChild      > Function: BtcXpgEnd        > Function: BtcXpgLog
              Log message (44 byte): External program terminated with exit code 1
            < Function: BtcXpgLog
          < Function: BtcXpgEnd      Termination status of external program: program terminated with error code 1
          StdOut/StdErr collected in memory
        < Function: BtcXpgEndXpgInt    > Function: BtcXpgEndXpgExport      > Function: BtcXpgParam      < Function: BtcXpgParam      > Function: BtcXpgParam      < Function: BtcXpgParam    < Function: BtcXpgEndXpgExport
    2009-02-05--21-18-10 : End of BtcXpgEndXpg
      < Function: BtcXpgEndXpg
    2009-02-05--21-18-10 : After second call of RFCDispatch
    2009-02-05--21-18-10 : After call of RfcClose (wait)
    < Function: main
    2009-02-05--21-18-10 : End of SAPXPG: main
    We couldnu2019t located any clear error indication that might help us in troubleshooting.
    We already configured settings in .rhosts file & we had resolve the permission problem
    We executed the following commands as user <sid>adm:
    In DB host, we executed rsh <CI host> date & it works.
    But in DB hosts, its doesn't work when we executed rsh <DB host> date
    Is this issue should be isolated as AIX OS issue?
    We couldn't execute any activities from DB13 as the DB rfc destination is not working.
    Is that alternative way that we can execute sapxpg on DB host?
    Or we have to install standalone gateway as solution? It's that any impact if we installing standalone gateway at DB host now (It's production system)?
    Thanks.
    BR,
    Terry

    Hi Guru,
    When we tried to execute the following command from host DB:
    rsh <Host CI> date
    it was return results.
    However, if we tried to execute from host CI:
    rsh <Host DB> data
    it was return no results.
    That's means we could'nt remotely start any of external command at DB host from CI host.
    Start external program error was isolated within operating system level.
    Any luck on this?
    Thanks.
    BR,
    Terry

  • How to run shell script using External Process in Process Flow?

    Hi,
    We can run external process using Process flow.
    I would like to run shell script as external process in Process flow.
    Could any one please explain it?
    Thanks and regards
    Gowtham Sen.

    HI,
    As you said I tried this case. I got the following error. The script is running successfully while I tested at unix command prompt.
    The error is as follows..
    tarting Execution PFPS_SMPL_RUNSHELL
    Starting Task PFPS_SMPL_RUNSHELL
    Starting Task PFPS_SMPL_RUNSHELL:EXTERNALPROCESS
    /SOURCE_FILES/CollectFiles.sh: line 1: ls: command not found
    /SOURCE_FILES/CollectFiles.sh: line 1: wc: command not found
    /SOURCE_FILES/CollectFiles.sh: line 1: ls: command not found
    Completing Task PFPS_SMPL_RUNSHELL:EXTERNALPROCESS
    Starting Task PFPS_SMPL_RUNSHELL:EXTERNALPROCESS_1
    SQL*Plus: Release 10.1.0.2.0 - Production on Fri Sep 29 22:57:39 2006
    Copyright (c) 1982, 2004, Oracle. All rights reserved.
    ERROR:
    ORA-12545: Connect failed because target host or object does not exist
    Enter user-name: SP2-0306: Invalid option.
    Usage: CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}]
    where <logon> ::= <username>[<password>][@<connect_identifier>] | /
    Enter user-name: SP2-0306: Invalid option.
    Usage: CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}]
    where <logon> ::= <username>[<password>][@<connect_identifier>] | /
    SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus
    Completing Task PFPS_SMPL_RUNSHELL:EXTERNALPROCESS_1
    Completing Task PFPS_SMPL_RUNSHELL
    Completing Execution PFPS_SMPL_RUNSHELL
    My scenario is---
    I am trying to return a file name from one shell script. I created a external process for that. After completion of this process, I am running another script which takes that file name and trying to create a external table. The both scripts are runnning successfully. But while I am trying to run using process flow, its not coming.
    And I am not getting the way to catch the output of external process and pass it as parameter as another external process.
    Any suggestions are welcome.
    Thanks and regards
    Gowtham Sen.

  • Problem in external process using process flow

    Hi All,
    I want to execute a batch file ( which is appending 2 text files ) using OWB process flow.
    For this i am using external process in OWB process flow and giving the parameters for external process as below:
    COMMAND --- VALUE as c:\winnt\system32\cmd.exe
    PARAMETERS_LIST --- VALUE as ?c:\\fileappend.bat
    when i execute the process flow....it is showing
    Completion Status Completed successfully
    Starting Execution BATCH_PROC
    Starting Task BATCH_PROC
    Starting Task BATCH_PROC:EXTERNALPROCESS
    Microsoft Windows 2000 [Version 5.00.2195]
    (C) Copyright 1985-2000 Microsoft Corp.
    C:\owb\owb\bin\win32&gt;
    C:\owb\owb\bin\win32&gt;
    WARNING: Log file truncated - see RAB for further information.
    Completing Task BATCH_PROC:EXTERNALPROCESS
    Completing Task BATCH_PROC
    Completing Execution BATCH_PROC
    But i couldn't see the result, means the files appended.
    It is working when i execute the batch file through MS-DOS.
    Please let me know is there any other necessary steps i need to take.
    Thanks in advance
    Malli

    Hi Malli,
    Because you are using an external process you do not need to specify the cmd command to perform the execution. You can just put the call to the batch file you have in the command string and that is it. Beware that the working directory is <owb home>\owb\bin\win32.
    Mark.

Maybe you are looking for

  • How to see the Open PO Qty in Mass

    Dear Experts,                     How to see the Open Qty in PO in mass, is there any report available..Please help  Regards karthik

  • Can't open any PDF file with Adobe Acrobat XI Pro

    I have tried to open multiple Acrobat files but none will open. I get a FATAL ERROR message saying: "Acrobat failed to connect to a DDE server."  I've created documents in word and publisher and am able to convert to pdf format but after the pdf file

  • Ohaus

    Hi  I'm trying to run an Ohaus Discovery balance (DV215CD) with LabVIEW. I have managed to get the balance to talk to Hyperterminal operating on windows XP via a serial to USB converter attached to the Ohaus provided RS232 cable. I am running the pro

  • Missing stylesheet classes from JSF page

    I'm not sure this is JHeadstart related and I will post on the JDeveloper forum as well but since all our applications are built using JHeadstart I thought I would post this hear in case other people had seen similar behaviour. We're using JDeveloper

  • IStores access from "other" countries

    Can I obtain an official answer as to when(if ever) we will be able to buy songs on ITunes in South Africa. Our local Apple shops are not able to answer such a simple question - surely this is easy for Apple to answer ? If you want our money fro the