Index: core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/WebContainerStarter.java =================================================================== --- core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/WebContainerStarter.java (revision 50777) +++ core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/WebContainerStarter.java (working copy) @@ -325,10 +325,11 @@ * the web container to be started, false otherwise */ private boolean isStartNeeded(NetworkListener networkListener) { - if (networkListener == null) { - return false; - } - - return ConfigBeansUtilities.toBoolean(networkListener.getJkEnabled()); + return false; +// if (networkListener == null) { +// return false; +// } +// +// return ConfigBeansUtilities.toBoolean(networkListener.getJkEnabled()); } } Index: core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/GrizzlyService.java =================================================================== --- core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/GrizzlyService.java (revision 50777) +++ core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/GrizzlyService.java (working copy) @@ -443,10 +443,9 @@ return null; } - final boolean ajpListener = ConfigBeansUtilities.toBoolean(listener.getJkEnabled()); // create the proxy for the port. GrizzlyProxy proxy = new GrizzlyProxy(this, listener); - if (!ajpListener && !("light-weight-listener".equals(listener.getProtocol()))) { + if (!("light-weight-listener".equals(listener.getProtocol()))) { final NetworkConfig networkConfig = listener.getParent(NetworkListeners.class).getParent(NetworkConfig.class); // attach all virtual servers to this port for (VirtualServer vs : networkConfig.getParent(Config.class).getHttpService().getVirtualServer()) { @@ -472,24 +471,8 @@ } } - Future> future = null; - if (!ajpListener) { - future = proxy.start(); - } else { - // we need to create a proxy for AJP based listeners, however, we - // don't want Grizzly to actually handle the request since the - // webcontainer will start a separate listener implementation to - // handle such requests. So the Future needs to return a - // non-null value here to prevent issues elsewhere. - future = new GrizzlyProxy.GrizzlyFuture(); - ((GrizzlyProxy.GrizzlyFuture) future).setResult(new Result(new Thread(new Runnable() { - @Override - public void run() { + final Future> future = proxy.start(); - } - }))); - } - // add the new proxy to our list of proxies. proxies.add(proxy); futures.add(future); Index: pom.xml =================================================================== --- pom.xml (revision 50777) +++ pom.xml (working copy) @@ -986,6 +986,12 @@ com.sun.grizzly + grizzly-http-ajp + ${grizzly.version} + + + + com.sun.grizzly grizzly-messagesbus ${grizzly.version} Index: web/pom.xml =================================================================== --- web/pom.xml (revision 50777) +++ web/pom.xml (working copy) @@ -57,7 +57,7 @@ web-naming web-core - web-ajp + war-util jstl-connector jsf-connector Index: web/webtier-all/pom.xml =================================================================== --- web/webtier-all/pom.xml (revision 50777) +++ web/webtier-all/pom.xml (working copy) @@ -113,10 +113,9 @@ ${project.version} - org.glassfish.main.web - web-ajp - ${project.version} - + com.sun.grizzly + grizzly-http-ajp + org.glassfish.main.web.web-embed web-embed-api Index: web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java =================================================================== --- web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java (revision 50777) +++ web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java (working copy) @@ -559,11 +559,11 @@ if (networkListeners != null) { List listeners = networkListeners.getNetworkListener(); for (NetworkListener listener : listeners) { - if (ConfigBeansUtilities.toBoolean(listener.getJkEnabled())) { - createJKConnector(listener, httpService); - } else { - createHttpListener(listener, httpService); - } +// if (ConfigBeansUtilities.toBoolean(listener.getJkEnabled())) { +// createJKConnector(listener, httpService); +// } else { + createHttpListener(listener, httpService); +// } } } createJKConnector(null, httpService); Index: web/web-glue/src/main/java/com/sun/enterprise/web/EmbeddedWebContainer.java =================================================================== --- web/web-glue/src/main/java/com/sun/enterprise/web/EmbeddedWebContainer.java (revision 50777) +++ web/web-glue/src/main/java/com/sun/enterprise/web/EmbeddedWebContainer.java (working copy) @@ -321,11 +321,12 @@ connector.setPort(port); - if (protocol.equals("ajp")) { +// if (protocol.equals("ajp")) { +// connector.setProtocolHandlerClassName( +// "org.apache.jk.server.JkCoyoteHandler"); +// } else + if (protocol.equals("memory")) { connector.setProtocolHandlerClassName( - "org.apache.jk.server.JkCoyoteHandler"); - } else if (protocol.equals("memory")) { - connector.setProtocolHandlerClassName( "org.apache.coyote.memory.MemoryProtocolHandler"); } else if (protocol.equals("https")) { connector.setScheme("https"); Index: common/container-common/pom.xml =================================================================== --- common/container-common/pom.xml (revision 50777) +++ common/container-common/pom.xml (working copy) @@ -159,6 +159,14 @@ grizzly-websockets + com.sun.grizzly + grizzly-http-ajp + + + com.sun.grizzly + grizzly-config + + junit junit test