Package org.zkoss.zkplus.embed
Class Bridge
- java.lang.Object
-
- org.zkoss.zkplus.embed.Bridge
-
public class Bridge extends java.lang.Object
Utilities to allow developers to start an execution in foreign Ajax channel.Bridge bridge = Bridge.start(svlctx, request, response, desktop); try { //execution is activated and you could access anything belonging to the desktop String jscode = bridge.getResult(); //send jscode back to the client to update DOM, if any } finally { bridge.close(); //stop the execution }
- Since:
- 5.0.5
- Author:
- tomyeh
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the execution such that other requests targeting the same desktop can be processed.static Desktop
getDesktop(javax.servlet.ServletContext svlctx, javax.servlet.http.HttpServletRequest request, java.lang.String dtid)
Returns the desktop of the given desktop ID, or null if not found.Execution
getExecution()
Returns the execution.java.lang.String
getResult()
Returns the result in the JavaScript.static Bridge
start(javax.servlet.ServletContext svlctx, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Desktop desktop)
Starts an execution.
-
-
-
Constructor Detail
-
Bridge
protected Bridge(javax.servlet.ServletContext svlctx, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Desktop desktop, java.lang.Object locale) throws java.lang.Exception
Constructor. Don't invoke this directly. Rather, usestart(javax.servlet.ServletContext, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.zkoss.zk.ui.Desktop)
instead.- Throws:
java.lang.Exception
-
-
Method Detail
-
start
public static Bridge start(javax.servlet.ServletContext svlctx, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Desktop desktop)
Starts an execution. After returned, the execution is activated and the caller is free to access any components belonging the given desktop.After processing, the caller shall invoke
close()
to stop the execution (in the finally clause).- Parameters:
desktop
- the desktop you want to access. You could retrieve by use ofgetDesktop(javax.servlet.ServletContext, javax.servlet.http.HttpServletRequest, java.lang.String)
.
-
getDesktop
public static Desktop getDesktop(javax.servlet.ServletContext svlctx, javax.servlet.http.HttpServletRequest request, java.lang.String dtid)
Returns the desktop of the given desktop ID, or null if not found.- Parameters:
dtid
- the desktop's ID.
-
getExecution
public Execution getExecution()
Returns the execution.
-
getResult
public java.lang.String getResult()
Returns the result in the JavaScript. The caller shall send it back and evaluate it at the client (eval(jscode);
).After calling this method, the caller shall not modify the component's state any more.
-
close
public void close()
Closes the execution such that other requests targeting the same desktop can be processed. It must be called. Otherwise, the whole desktop might not be able to be accessed any more.
-
-