<netui-data:callPageFlow> Tag
Calls methods on the Controller file (= JPF file) in the same directory
as the JSP page.
<netui-data:callPageFlow
[failOnError="failOnError"]
method="method"
[object="object"]
[resultId="resultId"] />
Calls methods on the Controller file (= JPF file) in the same directory
as the JSP page. If no Controller file
is found, an
ObjectNotFoundException
is
thrown and the tag execution fails.
Any return value is stored in the
{pageContext...}
data binding context object under the
attribute specified by the resultId
attribute.
For example, if you call the hello
method with the following <netui-data:callPageFlow> tag...
<netui-data:callPageFlow
method="hello"
resultId="helloMessage"
/>
...the result of the call is stored in the {pageContext...}
data binding context under the
attribute helloMessage
.
The result can be retrieved with the data binding expression
{pageContext.helloMessage}
<netui:label value="{pageContext.helloMessage}"/>
In a scriptlet, the result can be retrieved by calling the getAttribute()
method on the
javax.servlet.jsp.PageContext
object:
<%= pageContext.getAttribute("helloMessage") %>
Note that only synchronous methods can be called with <netui-data:callPageFlow>.
For handling asynchronous methods
see the help topic
Calling Web Services and Custom Java Controls From A Page Flow
Attributes |
failOnError |
Required: No | Supports
runtime evaluation: No | Data bindable: |
|
|
method |
Required: Yes | Supports
runtime evaluation: No | Data bindable: |
|
|
object |
Required: No | Supports
runtime evaluation: Yes | Data bindable: |
|
A string or data binding expression that names the class on which to call a method. |
resultId |
Required: No | Supports
runtime evaluation: No | Data bindable: |
|
|
In the following sample, the <netui-data:callPageFlow> tag calls the
sumCartItems method on the Controller file. The
<netui:label>
tag
accesses the result through the {pageContext...} data binding context.
<netui-data:callPageFlow method="sumCartItems" resultId="cartSum">
<netui-data:methodParameter value="{pageFlow.cart.lineItemList}"/>
</netui-data:callPageFlow>
...
<netui:label value="{pageContext.cartSum}"/>