The documentation for the Jetty Maven Plugin at
http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin#Running_more_th
an_one_webapp describes how to configure the pom.xml to configure more
than one webapp....

 

------------------

<plugin>

<groupId>org.mortbay.jetty</groupId>

<artifactId>jetty-maven-plugin</artifactId>

<configuration>

  <scanIntervalSeconds>10</scanIntervalSeconds>

  <webApp>

   <contextPath>/test</contextPath>

  </webApp>

  <contextHandlers>           

   <contextHandler
implementation="org.eclipse.jetty.webapp.WebAppContext">

    <war>${basedir}../../B.war</war>

    <contextPath>/B</contextPath>

   </contextHandler>

   <contextHandler
implementation="org.eclipse.jetty.webapp.WebAppContext">

    <war>${basedir}../../C.war</war>

    <contextPath>/B</contextPath>

   </contextHandler>

  </contextHandlers> 

 </configuration>

</plugin>

------------------

 

This configuration worked OK in Jetty v7.5.1.v20110908, but it no longer
works in Jetty v8.1.7.v20120910. When running configurations like this
in newer versions of Jetty, you get an error...

 

------------------

java.lang.IllegalStateException: No LoginService for
org.eclipse.jetty.security.authentication.FormAuthenticator@61234e59 in
org.eclipse.jetty.security.ConstraintSecurityHandler@54ece6e1

        at
org.eclipse.jetty.security.authentication.LoginAuthenticator.setConfigur
ation(LoginAuthenticator.java:45)

        at
org.eclipse.jetty.security.authentication.FormAuthenticator.setConfigura
tion(FormAuthenticator.java:129)

        at
org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:
376)

        at
org.eclipse.jetty.security.ConstraintSecurityHandler.doStart(ConstraintS
ecurityHandler.java:233)

------------------

 

This error seems to stem from a fix which was put in for Bug #368773
(https://bugs.eclipse.org/bugs/show_bug.cgi?id=368773) where
SecurityHandlers will no longer just pick the first LoginService they
find. It looks like now, you need to explicitly define a LoginService
for each additional webapp context. So for each additional
ContextHandler, you need to also define a corresponding LoginService.
There are some examples for how to do this in the jetty.xml, but I can't
find any examples which describe this process using the
maven-jetty-plugin configuration in the pom.xml - I'm not sure if it's
possible?

 

Is it still possible to configure additional ContextHandlers in the
maven-jetty-plugin configuration in the pom.xml using Jetty 8.1.7?
Should the Jetty Maven Plugin documentation be updated to reflect the
new process for setting up additional ContextHandlers?

 

-          Aaron

_______________________________________________
jetty-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to