I misspoke. If I just include the connector names, it works fine. That still leaves the issue that I want to specify virtual hosts as well as connectors, but as I just mentioned, I came up with a solution for that, and can put my code online if anyone wants to see it.
Thanks -- Lobos Studios | Phone: 877.919.4WEB | LobosStudios.com | Facebook.com/LobosStudios | @LobosStudios Web Development - Mobile Development - Helpdesk/Tech Support - Computer Sales & Service Acer Authorized Reseller - Computers, Windows and Android Tablets, Accessories Steve Sobol - CEO, Senior Developer and Server Jockey [email protected] From: [email protected] <[email protected]> On Behalf Of Jan Bartel Sent: Monday, March 26, 2018 16:00 To: JETTY user mailing list <[email protected]> Subject: Re: [jetty-users] Binding a WebAppContext to a specific connector? Steve, Jetty version? What other configuration? What urls did you try? What output did you get? Did you turn on debug? I cut and pasted your code and tested against jetty-9.4.8, and it is working fine. I actually used 2 http ports instead of one https port, but I suspect that wouldn't make any difference. I used port numbers 8080 (associated with the second context) and 9090 (associated with the first context), with these urls: http://localhost:8080/ -> served only context two http://localhost:9090/ -> served only context one Jan On 24 March 2018 at 02:07, Steve Sobol - Lobos Studios <[email protected] <mailto:[email protected]> > wrote: It didn’t seem to work when I only used the connector names, either. On Fri, Mar 23, 2018 at 7:38 AM -0700, "Steve Sobol - Lobos Studios" <[email protected] <mailto:[email protected]> > wrote: So if I want a WebAppContext to serve my app only for certain hostnames and only on one connector, that isn’t possible? On Fri, Mar 23, 2018 at 2:59 AM -0700, "Joakim Erdfelt" <[email protected] <mailto:[email protected]> > wrote: virtualHosts are not AND logic, they are OR logic. Said another way, if you have a context.virtualHosts, then the incoming request MUST match ONE of the virtualHosts entries. - Joakim Joakim Erdfelt / [email protected] <mailto:[email protected]> On Thu, Mar 22, 2018 at 11:06 PM, Steve Sobol - Lobos Studios <[email protected] <mailto:[email protected]> > wrote: Hello :) https://stackoverflow.com/questions/26148418/jetty-9-setting-up-handlers-and-connectors talks about setting up a handler that is only used to respond to requests on a specific connector: ServerConnector httpConnector = new ServerConnector(server); httpConnector.setName("unsecured"); // named connector httpConnector.setPort(80); ContextHandler helloHandler = new ContextHandler(); helloHandler.setContextPath("/hello"); helloHandler.setHandler(new HelloHandler("Hello World")); helloHandler.setVirtualHosts(new String[]{"@unsecured"}); Does this work out of the box for web app contexts? Part of my code follows: ServerConnector sslConnector = new ServerConnector(s, new SslConnectionFactory(sslContextFactory, HttpVersion.HTTP_1_1.asString()), new HttpConnectionFactory(sslHttpConfig)); sslConnector.setName("https"); sslConnector.setHost("0.0.0.0"); sslConnector.setPort(443); ServerConnector nonSslConnector = new ServerConnector(s, new HttpConnectionFactory(), new HttpConnectionFactory(nonSslHttpConfig)); nonSslConnector.setName("http"); nonSslConnector.setHost("0.0.0.0"); nonSslConnector.setPort(80); WebAppContext t1 = new WebAppContext(); t1.setContextPath("/"); t1.setDisplayName("abc"); t1.setWar("c:/TempWebapp-1.0.war"); t1.setVirtualHosts(new String[] {"@https","admin.bamidbarconnect.com <http://admin.bamidbarconnect.com> ","test2.local"}); WebAppContext t2 = new WebAppContext(); t2.setContextPath("/"); t2.setResourceBase("c:/TempWebapp2/"); t2.setParentLoaderPriority(true); t2.setVirtualHosts(new String[] {"@http","test1.local"}); s.setConnectors(new Connector[]{nonSslConnector, sslConnector}); HandlerList list = new HandlerList(); list.addHandler(t1); list.addHandler(t2); s.setHandler(list); If it’s supposed to work, it doesn’t seem to be working for me. T1 is only supposed to be served via the SSL connector on port 443 and T2 is only supposed to be served on the non-SSL connector on port 80. Thanks --Steve -- Lobos Studios | Phone: 877.919.4WEB | LobosStudios.com | Facebook.com/LobosStudios | @LobosStudios Web Development - Mobile Development - Helpdesk/Tech Support - Computer Sales & Service Acer Authorized Reseller - Computers, Windows and Android Tablets, Accessories Steve Sobol - CEO, Senior Developer and Server Jockey [email protected] <mailto:[email protected]> _______________________________________________ jetty-users mailing list [email protected] <mailto:[email protected]> To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users _______________________________________________ jetty-users mailing list [email protected] <mailto:[email protected]> To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users -- Jan Bartel <[email protected] <mailto:[email protected]> > www.webtide.com <http://www.webtide.com> Expert assistance from the creators of Jetty and CometD
_______________________________________________ jetty-users mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users
