[scxml] Setting state through history element or other means

2011-09-21 Thread Dario D
Hello,

Is there a way to programatically change history state of a workflow? Our
idea is to be able to set freely the next state to be executed. If we set
the state like this:

Set states = executor.getCurrentStatus().getStates();
TransitionTarget tt = (TransitionTarget)
executor.getStateMachine().getTargets().get(stateId);
states.clear();
states.add(tt);

This will set current state, but onentry will not be executed, only
onexit on transition. Perhaps if we could somehow programatically change
current status of the executor, so that when we trigger an event that has
target=historyElement, the state machine will transition to the wanted
state. Is this possible?


[jxpath] Issue in retrieving value jxpath

2011-09-21 Thread Shamik Bandopadhyay
Hi,

 I'm having an issue in parsing the following XML using jxpath. Here's the
sample XML.

 ?xml version=1.0 encoding=UTF-8?
feed xmlns=http://www.w3.org/2005/Atom; xmlns:media=
http://search.yahoo.com/mrss/; xmlns:openSearch=
http://a9.com/-/spec/opensearchrss/1.0/; xmlns:gd=
http://schemas.google.com/g/2005; xmlns:yt=
http://gdata.youtube.com/schemas/2007;
  entry
idhttp://gdata.youtube.com/feeds/api/videos/P1lDDu9L5YQ/id
published2010-09-20T17:41:38.000Z/published
   /entry

entry
   idhttp://gdata.youtube.com/feeds/api/videos/P1lDDu9L5YQ/id
 published2010-09-20T17:41:38.000Z/published
  /entry
/feed


I'm trying to read the contents of entry usig xpath. Heres my code
snippet.

String test = the_xml_example_above;

ByteArrayInputStream is = new ByteArrayInputStream(test.getBytes(UTF-8));
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc22 = db.parse(is);

JXPathContext ctx = JXPathContext.newContext(doc22);
List nodes = ctx.selectNodes(/feed/entry);

 Here the list is always 0. Now, if I remove the namespace attributes from
feed, jxpath is able to resolve the entry nodes. Not sure what's the
reason behind this.

I'll appreciate if someone cane provide pointers to this issue.

-Thanks


Re: [scxml] Setting state through history element or other means

2011-09-21 Thread Rahul Akolkar
On Wed, Sep 21, 2011 at 5:53 AM, Dario D darac1...@gmail.com wrote:
 Hello,

 Is there a way to programatically change history state of a workflow? Our
 idea is to be able to set freely the next state to be executed. If we set
 the state like this:

        Set states = executor.getCurrentStatus().getStates();
        TransitionTarget tt = (TransitionTarget)
 executor.getStateMachine().getTargets().get(stateId);
        states.clear();
        states.add(tt);

 This will set current state, but onentry will not be executed, only
 onexit on transition. Perhaps if we could somehow programatically change
 current status of the executor, so that when we trigger an event that has
 target=historyElement, the state machine will transition to the wanted
 state. Is this possible?
snip/

There is no straightforward way to programmatically manipulate
executor history. This is by design, as the historical record of
execution should be what it was. There are some usecases for
programmatic manipulation of current states (as can be done via
snippet above) such as pooling of executors or persist-resume
scenarios. Often, any need to do more programmatic manipulation beyond
that may be mitigated by rethinking the state machine and associated
events (including their payloads).

-Rahul

-
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org