Hi Sharon,
Follow-up question. See inline below.
-T
PS -- Ever thought of writing one of those O'Reilly "Definitive Guide"
books for STAF/STAX? :) AFAIK, there really isn't anything out there
right now.
$0.02.
On Wed, Jan 2, 2013 at 10:06 AM, Sharon Lucas <luc...@us.ibm.com> wrote:
> Hi Tennis,
>
> Yes, you can do this if you submit this STAF service request via a program
> using a STAF API for Java, C/C++, Python, Perl, or Tcl instead of using the
> STAF command line executable which just returns a string
Is this correct for the Staf Ant Task as well? It seems to return
unmarshalled data only. Or, can the individual fields be accessed there as
they are via Python,Perl, Java, etc. ?
> containing the result because then you can access the individual fields
> (such as jobID and status) in the unmarshalled result object directly.
For examples, see the following documents accessible via the STAF
> Documentation web page at http://staf.sourceforge.net/docs.php for the
> programming language of your choice:
> - STAFJava User's Guide - This document describes STAF's V3 support for
> the Java language. It includes information on the core STAF Java APIs.
> - STAF Python User's Guide - This document describes STAF's V3 support for
> the Python language. It includes information on the core STAF Python APIs. -
> STAF Perl User's Guide - This document describes STAF's V3 support for the
> Perl language. It includes information on the core STAF Perl APIs.
> - STAF Tcl User's Guide - This document describes STAF's V3 support for
> the Tcl language. It includes information on the core STAF Tcl APIs.
> - STAF User's Guide sections "6.2 C" and "6.3 C++" - These sections
> document STAF's support for C/C++.
>
> The STAX Users's Guide describes the result format returned by a STAX
> "EXECUTE FILE <FileName> WAIT RETURNRESULT" request in section "EXECUTE",
> sub-section "Results" at
> http://staf.sourceforge.net/current/STAX/staxug.html#Header_Execute. See
> where it talks about when this request is successful and the WAIT option
> and RETURNRESULT option are specified (but not the DETAILS option) and says
> the result will contain a marshalled <Map:STAF/Service/STAX/JobResult>
> representing the job result and it defines this map and its fields
> (including "jobID" and "status").
>
> For example, here's a Java program that submits an "EXECUTE FILE
> <FileName> WAIT RETURNRESULT" request to the STAX service on the local
> machine and accesses the fields named "jobID" and "status" in the result:
>
> import com.ibm.staf.*;
> import java.util.Map;
>
> public class RunSTAXJob
> {
> public static void main (String[] args)
> {
> new RunSTAXJob();
> }
>
> public RunSTAXJob()
> {
> STAFHandle stafHandle = null;
>
> try
> {
> stafHandle = new STAFHandle("MyTest");
> String machine = "local";
> String service = "STAX";
> String xmlFileName = "C:/stax/test1.xml"; // XXX: Change this
> to your STAX xml job name
> STAFResult result = null;
>
> // You should use helper method STAFUtil.wrapData() for any
> values
> // that may contain spaces
>
> String request = "EXECUTE FILE " +
> STAFUtil.wrapData(xmlFileName) +
> " WAIT RETURNRESULT";
>
> result = stafHandle.submit2(machine, service, request);
>
> if (result.rc != STAFResult.Ok)
> {
> System.out.println(
> "Error submitting request STAF " + machine + " " +
> service + " " + request + "\nRC: " + result.rc +
> " Result: " + result.result);
> System.exit(1);
> }
>
> // Pretty print the result (if desired)
> System.out.println(result.resultContext);
>
> // The result from the STAX EXECUTE WAIT RETURNRESULT is a
> // marshalled map. Access the data from the map (e.g. jobID,
> // status, result) in the root object of the result.
>
> Map jobResultMap = (Map)result.resultObj;
> String jobID = (String)jobResultMap.get("jobID");
> String jobStatus = (String)jobResultMap.get("status");
>
> if (!jobStatus.equals("Normal"))
> {
> System.out.println(
> "STAX Job ID " + jobID + " failed with a " +
> jobStatus + " status.");
> System.exit(1);
> }
>
> String jobResult = (String)jobResultMap.get("result");
>
> System.out.println(
> "STAX Job ID " + jobID +
> " completed successfully returning: " + jobResult);
>
> stafHandle.unRegister();
> }
> catch (STAFException e)
> {
> System.out.println("STAFException creating handle: " +
> e.getMessage());
> }
> }
> }
>
> --------------------------------------------------------------
> Sharon Lucas
> IBM Austin, luc...@us.ibm.com
> (512) 286-7313 or Tieline 363-7313
>
>
>
>
> From: Tennis Smith <tennis_sm...@yahoo.com>
> To: staf-users@lists.sourceforge.net,
> Date: 12/26/2012 09:26 PM
> Subject: [staf-users] Getting Key/Values From Results Data
> ------------------------------
>
>
>
> Hi,
>
> I'm confused about the best way to access the contents of results when I
> run a stax job. For example, when this is the output:
> {
> Job ID : 3
> Start Date-Time: 20101028-14:35:01
> Stop Date-Time : 20101028-14:39:19
> Status : Normal
> Job Log Errors : []
> Result : None
> Testcase Totals: {
> Tests : 1
> Passes: 1
> Fails : 0
> }
> }
>
> How can i get the value for "Job ID" without grep or some other utility?
> Is there a "native" way to access the jobid key/value pairs?
>
> Hope this makes sense.
>
> --
> Tks,
> -Tennis
> ------------------------------------------------------------------------------
> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> MVPs and experts. ON SALE this month only -- learn more at:
> http://p.sf.net/sfu/learnmore_122712
> _______________________________________________
> staf-users mailing list
> staf-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/staf-users
>
>
--
Tks,
-Tennis
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122912
_______________________________________________
staf-users mailing list
staf-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/staf-users