Example usage for org.apache.commons.jxpath JXPathContext getValue

List of usage examples for org.apache.commons.jxpath JXPathContext getValue

Introduction

In this page you can find the example usage for org.apache.commons.jxpath JXPathContext getValue.

Prototype

public abstract Object getValue(String xpath);

Source Link

Document

Evaluates the xpath and returns the resulting object.

Usage

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests invalid notification./*  w  w  w .j  a v a2s.co m*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testInvalidNotification() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-constraint", "false");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals("input-existing", this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("false", this.stateChangedListener.getContext("valid"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests readonly notification./*from  w  w w .j a v  a  2 s. c o m*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testReadonlyNotification() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-readonly", "true");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals("input-existing", this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("true", this.stateChangedListener.getContext("readonly"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests readwrite notification.//  ww  w.  j av  a2 s  . c om
 *
 * @throws Exception if any error occurred during the test.
 */
public void testReadwriteNotification() throws Exception {
    this.chibaBean.updateControlValue("input-readonly", "true");
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-readonly", "false");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals("input-existing", this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("false", this.stateChangedListener.getContext("readonly"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests required notification.//from  www  .j  a v a2s  . co m
 *
 * @throws Exception if any error occurred during the test.
 */
public void testRequiredNotification() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-required", "true");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals("input-existing", this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("true", this.stateChangedListener.getContext("required"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests optional notification.//  www  . ja  va 2s .c  o  m
 *
 * @throws Exception if any error occurred during the test.
 */
public void testOptionalNotification() throws Exception {
    this.chibaBean.updateControlValue("input-required", "true");
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-required", "false");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals("input-existing", this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("false", this.stateChangedListener.getContext("required"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests enabled notification./*  w  w  w . j  a va 2 s .  c  o m*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testEnabledNotification() throws Exception {
    this.chibaBean.updateControlValue("input-relevant", "false");
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-relevant", "true");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals("input-existing", this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("true", this.stateChangedListener.getContext("enabled"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests disabled notification./* ww  w.  ja va2  s  .co m*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testDisabledNotification() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-relevant", "false");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals("input-existing", this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("false", this.stateChangedListener.getContext("enabled"));
}

From source file:org.chiba.xml.xforms.xpath.ChibaExtensionFunctionsTest.java

public void testFileSize() throws Exception {
    //determine size of test input file
    URL url = getClass().getResource("FileFunctionsTest.xhtml");
    File inFile = new File(url.getFile());
    String size = "" + inFile.length();

    ChibaBean chibaBean = initProcessor(inFile);

    Instance instance = chibaBean.getContainer().getDefaultModel().getDefaultInstance();
    JXPathContext context = JXPathContext.newContext(instance);
    String resultofCalc = (String) context.getValue("//filesize");

    assertEquals(size, resultofCalc);//  ww w  .  jav a 2s. com
}

From source file:org.chiba.xml.xforms.xpath.ChibaExtensionFunctionsTest.java

public void testFileDate() throws Exception {
    //determine lastmodified date of test input file
    URL url = getClass().getResource("FileFunctionsTest.xhtml");
    File inFile = new File(url.getFile());
    long modified = inFile.lastModified();

    //test default date formatting when argument 'format' is omitted
    Calendar calendar = new GregorianCalendar(Locale.getDefault());
    calendar.setTimeInMillis(modified);/*from   ww  w. j a  v  a 2  s.  co m*/

    SimpleDateFormat simple1 = new SimpleDateFormat("dd.MM.yyyy H:m:s");
    String s = simple1.format(calendar.getTime());

    ChibaBean chibaBean = initProcessor(inFile);

    Instance instance = chibaBean.getContainer().getDefaultModel().getDefaultInstance();
    JXPathContext context = JXPathContext.newContext(instance);
    String resultofCalc = (String) context.getValue("//filedate1");

    //        DOMUtil.prettyPrintDOM(chibaBean.getContainer().getDefaultModel().getDefaultInstance().getInstanceDocument());
    assertEquals(s, resultofCalc);

    //test date formatting with given pattern
    SimpleDateFormat simple2 = new SimpleDateFormat("yyyy.MM.dd");
    s = simple2.format(calendar.getTime());

    resultofCalc = (String) context.getValue("//filedate2");
    assertEquals(s, resultofCalc);

}

From source file:org.chiba.xml.xforms.xpath.test.ChibaExtensionFunctionsTest.java

public void testFileSize() throws Exception {
    //determine size of test input file
    URL url = getClass().getResource("FileFunctionsTest.xml");
    File inFile = new File(url.getFile());
    String size = "" + inFile.length();

    ChibaBean chibaBean = initProcessor(inFile);

    Instance instance = chibaBean.getContainer().getDefaultModel().getDefaultInstance();
    JXPathContext context = JXPathContext.newContext(instance);
    String resultofCalc = (String) context.getValue("//filesize");

    assertEquals(size, resultofCalc);//from  ww w. j a  v  a 2  s .c  o  m
}