ZK - Open Source Ajax Java FrameworkZK - Open Source Ajax Java Framework

Executions.sendRedirect problem

koraybastug
2 Sep 2010 03:56:45 GMT
2 Sep 2010 03:56:45 GMT

Hello,

After migrating ZK 5.0.4 from 5.0.3, we have exception after Executions.sendRedirect.

Exception is:

java.lang.NullPointerException
	at org.zkoss.zkmax.ui.impl.UiEngineImpl.afterCreate(UiEngineImpl.java:39)
	at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage0(UiEngineImpl.java:377)
	at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage(UiEngineImpl.java:291)
	at org.zkoss.zk.ui.http.DHtmlLayoutServlet.process(DHtmlLayoutServlet.java:243)
	at org.zkoss.zk.ui.http.DHtmlLayoutServlet.doGet(DHtmlLayoutServlet.java:164)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
	at java.lang.Thread.run(Thread.java:619)

We try to access index.zul:

<?init class="test.LoginController"?> 
<zk>
	<label value="hello index" />
</zk>

which initialize test.LoginController:

package test;

import java.util.Map;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.Page;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zk.ui.util.Initiator;

@SuppressWarnings("serial")
public class LoginController extends GenericForwardComposer implements Initiator
{
	@Override
	public void doInit(Page page, Map args) throws Exception
	{
		Object user = null;
		if (user == null)
		{
			Executions.sendRedirect("http://www.zkoss.org/");
			return;
		}
	}

	@Override
	public void doAfterCompose(Page page) throws Exception
	{
	}
	@Override
	public boolean doCatch(Throwable ex) throws Exception
	{
		return false;
	}
	@Override
	public void doFinally() throws Exception
	{
	}
}

and dispatch to login.zul:

<zk>
	<label value="hello login" />
</zk>

But gives exception after Executions.sendRedirect. It works with previous releases.

Platform is: jdk1.6.0_18
Apache Tomcat 6.0.20
Windows XP SP3

Any suggestions?